我在view
应用中有一个asp.net-mvc4
来访问来自controller
和model
的数据。
@model IEnumerable<ViewExampleDatabase4.Models.Messung>
@section Scripts{
@*@Scripts.Render("~/bundles/jqueryval")*@
<script type="text/javascript">
$(document).ready(function () {
$(".datefield").datepicker();
});
</script>
}
<table style="background-color: #009963; font-weight: lighter; font-size: 15px;
text-align: center;" width="740" height="20" cellspacing="2" cellpadding="5" border="1">
<tr>
<td style="background-color: #009963; color: #FFFFFF" colspan="3">
<b> Messungen für Fahrzeug : @Html.Raw(ViewBag.Fahrzeugname) </b>
</td>
</tr>
</table>
@using (Html.BeginForm("ForFahrzeug", "Messungen", FormMethod.Get))
{
<!--Messungsart: @Html.DropDownList("Total")-->
<P>Messungen der letzten Tage: @Html.TextBox("days", "30", new { style =
"width:5%" }) Oder Messungen begin von:
@Html.TextBox("initDate" ,"", new { style = "width:15%", @class = "datefield" })
und Ende:
@Html.TextBox("finalDate" ,"", new { style = "width:15%", @class = "datefield" })
<input type="submit" value="Filter" /> </p>
}
<table>
var total = 0;
@foreach (var item in Model)
{
total = total + item.t_Gesamtzeit_s_msg;
if(Model.Last()==item)
{
<table style="background-color: #009963; font-weight: lighter; font-size: 12px;
text-align: center; " width="740" height="30" cellspacing="2" cellpadding="5">
<tr>
<td style="background-color: #009963; color: #FFFFFF" colspan="3"> Summary </td>
</tr>
<tr style = "border:1px solid #FFFFFF">
<td style="background-color: #CCCCCC; color: #000000; border:1px solid #FFFFFF">
<b>Gesamtzeit</b></td>
<td style="background-color: #CCCCCC; color: #000000; border:1px solid
#FFFFFF">@Html.Raw(total)</td>
<td style="background-color: #CCCCCC; color: #000000; border:1px solid
#FFFFFF">Messende</td>
<td style="background-color: #CCCCCC; color: #000000; border:1px solid #FFFFFF"></td>
</tr>
</table>
}
}
</table>
<table>
<tr>
<th>
@Html.DisplayNameFor(model => model.Name)
</th>
<th>
@Html.DisplayNameFor(model => model.Messbeginn)
</th>
<th>
@Html.DisplayNameFor(model => model.Messende)
</th>
</tr>
@foreach (var item in Model)
{
<tr>
<td width="8%">
@Html.ActionLink(item.Name, "MessungsDetail", "Messungen", new { id = item.ID },
null)
</td>
<!--<td width="35%">
@Html.DisplayFor(modelItem => item.Beschreibung)
</td>-->
<td width="10%">
@Html.DisplayFor(modelItem => item.Messbeginn)
</td>
<td width="8%">
@Html.DisplayFor(modelItem => item.Messende)
</td>
<!--<td width="10%">
@Html.ActionLink("Download", "ForDownload", "Messungen", new { id = item.ID },
null)
</td>-->
</tr>
}
</table>
因为我已声明变量total
。但是当我用它来增量时。它给了erorr。我需要一个变量来使用。
答案 0 :(得分:0)
您需要声明代码块:
@{ var total = 0; }
由于您之前有“HTML标记”,因此total = total + item.t_Gesamtzeit_s_msg;
之后的@foreach
并非“自动检测”。
但是正如评论中已经说过的那样:这应该由模型处理而不是视图。
AND 我还建议仅使用英文名称,因为如果以后“非德语人”应该维护代码,可能会导致可维护性问题。