我试图在MVC中添加表的任何数字列的总值,并在标题行中显示总计.例如,我想在TotalCashStake列中添加所有值,并将该数字显示在标题行中.我完全不熟悉MVC,我不知道如何实现它.
这是index.cshtml页面:

这是我的index.cshtml页面的源代码:
@model IEnumerable<DailyReport>
@{
ViewBag.Title = "Index";
}
<h2>Index</h2>
<p>
@Html.ActionLink("Create New", "Create")
@using (Html.BeginForm())
{
<p>
Start Date: @Html.TextBox("StartDate") <br />
<br />
End Date: @Html.TextBox("EndDate") <br />
<br />
<input type="submit" value="Filter" />
</p>
}
</p>
<table class="table">
<tr>
<th>
@Html.DisplayNameFor(model => model.DailyReportDate)
</th>
<th>
@Html.DisplayNameFor(model => model.BettingShop)
</th>
<th>
@Html.DisplayNameFor(model => model.Estate)
</th>
<th>
@Html.DisplayNameFor(model => model.SisSrNumber)
</th>
<th>
@Html.DisplayNameFor(model => model.ShopBalance)
</th>
<th>
@Html.DisplayNameFor(model => model.TotalCashStake)
</th>
<th>
@Html.DisplayNameFor(model => model.TotalOtherCashOut)
</th>
</tr>
@foreach …Run Code Online (Sandbox Code Playgroud) 我有一个包含许多复选框的视图.我希望能够将复选框的值传递给控制器,然后输出已经勾选的OfficeNames列表.我不知道如何将多个复选框的值传递回控制器,或者如何根据已勾选的框输出OfficeNames
视图:
<p>
@using (Html.BeginForm())
{
<p>
Start Date: @Html.TextBox("StartDate") <br />
<br />
End Date: @Html.TextBox("EndDate") <br />
<br />
<input type="submit" value="Filter" />
</p>
}
<p>
@foreach (var item in Model.BettingOffices)
{
<label>@Html.DisplayFor(modelItem => item.OfficeName)</label>
<input type="checkbox" name="selectedShops" value="@item.OfficeName">
}
</p>
Run Code Online (Sandbox Code Playgroud)
控制器:
public class DailyReportController : Controller
{
private RiskEntities _db = new RiskEntities();
// GET: /DailyReport/
public ActionResult Index(DateTime? startDate, DateTime? endDate)
{
if (startDate == null || endDate == null)
{
var dailyReportModelBlank = new DailyReportModel(); …Run Code Online (Sandbox Code Playgroud) 我有一个带有不同用户帐户和密码的MVC应用程序.登录功能正常,但是当我单击注销按钮时,我收到404错误说:
'/'应用程序中的服务器错误.
无法找到该资源.说明:HTTP 404.您要查找的资源(或其中一个依赖项)可能已被删除,>其名称已更改,或暂时不可用.请查看以下网址,并确保拼写正确.
请求的URL:/ Account/LogOff
这是注销按钮的代码:
<div class="navbar-collapse collapse">
<ul class="nav navbar-nav">
<li>@Html.ActionLink("Log Off", "LogOff", "Account")</li>
</ul>
</div>
Run Code Online (Sandbox Code Playgroud)
这是AccountController中的代码
[HttpPost]
[ValidateAntiForgeryToken]
public ActionResult LogOff()
{
Session.Clear();
FormsAuthentication.SignOut();
return RedirectToAction("Index", "Home");
}
Run Code Online (Sandbox Code Playgroud) 我正在尝试将复选框列表排列成 3 列,例如:
A F L
B G M
C H N
D I O
E K ...
Run Code Online (Sandbox Code Playgroud)
目前我有执行此操作的代码,但是如果复选框的数量不能被 3 整除,则它超出范围并引发空引用异常。我拥有的复选框数量可能会有所不同,因此我无法将其硬编码为可被 3 整除的数字。
这是我目前拥有的代码:
@{
var rows = (Model.BettingOffices.Count()) % 10 == 0
? (Model.BettingOffices.Count) / 10
: ((Model.BettingOffices.Count) / 10) + 1;
}
<table>
@for (int i = 0; i < rows; i++)
{
<tr>
<td width="400">
@Model.BettingOffices.Skip(i).FirstOrDefault().OfficeName
<input name="selectedShops" type="checkbox"
value="@Model.BettingOffices[i].OfficeName"/>
</td>
<td width="400">
@Model.BettingOffices.Skip(i + rows).FirstOrDefault().OfficeName
<input name="selectedShops" type="checkbox"
value="@Model.BettingOffices[i + rows].OfficeName" />
</td>
<td width="400">
@Model.BettingOffices.Skip(i …Run Code Online (Sandbox Code Playgroud) 我试图更改datetime表中可空字段的格式,以便以格式显示ddd dd mmm yyyy.我尝试过使用DateTime.ToString("ddd dd mmm yyyy),DateTime.Value.ToString("ddd dd mmm yyyy")但是都没有用过.
<td>
@Html.DisplayFor(modelItem => item.DailyReportDate)
</td>
Run Code Online (Sandbox Code Playgroud)
任何意见,将不胜感激.