Я пытаюсь создать редактор в ASP.NET MVC 2 для списка флажков. Набор этих флажков основан на таблице базы данных. У меня возникли проблемы с получением имен, чтобы выйти правильно, так что значения поста ...привязка вложенного списка модели и HTML-помощники
ViewModels:
public class EAF
{
// other properties
public IEnumerable<ProductViewModel> _products { get; set; }
}
public class ProductViewModel
{
public int ProductPK { get; set; }
public string ProductName { get; set; }
public bool IsSelected { get; set; }
}
Главного Вид:
<%: Html.EditorFor(m => m._products, "ProductListTemplate") %>
Редактор шаблонов (список):
<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<IList<EmployeeAccessForm.Models.ProductViewModel>>" %>
<fieldset>
<legend>REQUEST FOR: (select item(s) to display access form)</legend>
<table>
<tr>
<% for (int i = 0; i < Model.Count(); i++) { %>
<td>
<%: Html.EditorFor(model => model[i], "ProductCheckBox") %>
</td>
<% if (i+1 % 5 == 0) { %>
</tr>
<tr>
<% } %>
<% } %>
</tr>
</table>
</fieldset>
редактор шаблона (пункт):
<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<EmployeeAccessForm.Models.ProductViewModel>" %>
<%: Html.HiddenFor(model => model.ProductPK)%>
<%: Html.CheckBoxFor(model => model.IsSelected)%>
<%: Html.DisplayTextFor(model => model.ProductName)%>
Я получаю таблицу флажков, как и ожидалось, но когда я просматриваю источник, все входы имеют имя _products.[0].ProductPK
, где мне нужно, чтобы оно было _products[0].ProductPK
(без первой точки). Есть ли способ использовать помощников, чтобы получить имена, которые выходят, как последний? Я могу сделать это, написав HTML явно, но задавался вопросом, могу ли я по-прежнему использовать помощники и получить правильное имя.
Я редактировал свой титул. Пожалуйста, смотрите: «Если вопросы включают« теги »в их названиях?] (Http://meta.stackexchange.com/questions/19190/), где консенсус« нет, они не должны ». –
Спасибо за подсказку. – Mike