В настоящее время я создаю сайт в ASP.NET MVC, где я хотел бы использовать EditorTemplates для отображения списка внутри моего ViewModel. RowViewModel имеет список RowDataViewModels. Я пытаюсь сделать Create View для RowViewModel, где я могу использоватьASP.NET MVC EditorTemplate не используется
@Html.EditorFor(model => model.RowData)
и поэтому мне нужно EditorTemplate. Я создал и EditorTemplate под:
Views/Shared/EditorTemplates/RowDataViewModel.cshtml
И я также попытался положить папку EditorTemplates в папке/Home/представление, но ничего не похоже на работу. На панели редактирования нет точек останова. Я думаю, что раньше делал это, но я мог что-то забыть.
Любые идеи?
RowViewModel:
public class RowViewModel
{
[Required]
[Display(Name="Name")]
public string Name { get; set; }
public List<RowDataViewModel> RowData { get; set; }
}
RowDataViewModel:
public class RowDataViewModel
{
public string Name { get; set; }
public string Value { get; set; }
public string DataType { get; set; }
}
EditorTemplate - RowDataViewModel.cshtml:
@using iDealWebRole.ViewModels
@model RowDataViewModel
@Html.ValidationSummary(true, "", new { @class = "text-danger" })
<div class="form-group">
@Html.LabelFor(model => model.Name, htmlAttributes: new { @class = "control-label col-md-2" })
<div class="col-md-10">
@Html.EditorFor(model => model.Value, new { htmlAttributes = new { @class = "form-control" } })
@Html.ValidationMessageFor(model => model.Value, "", new { @class = "text-danger" })
</div>
</div>
ли вы имеете в виду '@ Html.EditorFor (модель => model.RowData)' (не '@ model.EditorFor (...)')? –
Просто опечатка в моем посте. Исправлено это сейчас :) –
Код, который вы показали здесь, в порядке и будет работать правильно. Должна быть другая проблема. –