При первом использовании я полюбил его, и он чувствовал себя гораздо менее загроможденным, чем механизм просмотра вебформ <%:%> и т. Д., Но при дальнейшем его использовании я не могу не заметить, что он гиперчувствителен к тому, где его скобки "{"размещены и другие сценарии.Это дает ошибки в точках, где старый движок просмотра не был настолько требователен.
Например, приведенный ниже код выдаст ошибку, поскольку закрывающая скобка помощника формы} находится под тегом </table>
.Если я поставлю его выше </tbody>
, это сработает!Но мне это там не нужно, потому что ввод кнопки отправки должен быть вложенным, а я не хочу помещать ввод кнопки в таблицу.
@model CartTest.Models.Cart
@{
ViewBag.Title = "Index";
}
<h2>Cart Index</h2>
<table width="80%" align="center">
<thead>
<tr>
<th align="center">Quantity</th>
<th align="left">Item</th>
<th align="right">Price</th>
<th align="right">Subtotal</th>
</tr>
</thead>
<tbody>
@{int index = 0;}
@using (Html.BeginForm("UpdateCart","Cart"))
{
foreach (var line in Model.Lines)
{
<tr>
@Html.Hidden("Lines.Index", index)
<td align="center">@Html.TextBox("Lines[" + index + "].Quantity", line.Quantity)</td>
<td align="left">@line.Product.Name</td>
<td align="right">@line.Product.Price</td>
<td align="right">@(line.Quantity * line.Product.Price)</td>
<td align="right">@Html.ActionLink("Remove", "RemoveItem", new { productId = line.Product.ProductID }, null)</td>
</tr>
index++;
}
</tbody>
<tfoot></tfoot>
</table>
<input type="submit" value="Update Cart" />
}