У меня странная проблема с редактором для помощника из MVC3.Вот в чем дело: я пытаюсь отобразить checkboxList, и он работает, если я не называю explicity именем шаблона.Однако, если я пытаюсь использовать имя шаблона, он выдает исключение, говорящее, что я пытаюсь передать общий список, когда я должен просто передать мою viewModel.Я покажу некоторый код, чтобы сделать его более понятным:
ViewModel
public class ChkViewModel
{
public string ContractName {get;set;}
public string Contract {get;set;}
public bool Checked {get;set;}
}
Шаблон EditorFor (он называется ContractTemplate)
@model Models.ChkViewModel
<p>
@Html.HiddenFor(x => x.Contract )
@Html.LabelFor(x => x.ContractName , Model.ContractName )
@Html.CheckBoxFor(x => x.Checked, new { @class = "chkContract" })
</p>
Выдержка из моего представления
<div id="contractContainer">
@Html.EditorFor(item=>item.ContractList)
</div>
Это отлично работает.Но он пытается сделать это:
<div id="contractContainer">
@Html.EditorFor(item=>item.ContractList, "ContractTemplate")
</div>
Выдает InvalidOperationException
сообщение о том, что мне нужно передать простую ChkViewModel, а не GenericList ChkViewModel.
Я спрашиваю только об этом, потому чтоЯ пытался создать еще один список флажков, и я не мог заставить его работать (даже не отображать флажки), и когда я попытался установить имя шаблона, чтобы я мог хотя бы увидеть флажки, он выдал эту ошибку.