私はEntity Framework 4.1を使用してASP.Net MVC 3 Webアプリケーションを開発しています。 CheckBoxListの表示に問題があります。私に説明させてください。ASP.Net MVC 3 EditorFor CheckBoxList
私は私のコントローラ内の2のViewModelの
public class ViewModelShiftSubSpecialties
{
public IEnumerable<ViewModelCheckBox> SpecialtyList { get; set; }
}
public class ViewModelCheckBox
{
public string Id { get; set; }
public string Name { get; set; }
public bool Checked { get; set; }
public string Specialty { get; set; }
}
を持って、私は
IList<RelationshipGradeSub> gradeSubSpecialties = GetSubSpecialtiesForGrade(firstShiftGrade.gradeID);
ViewModelShiftSubSpecialties viewModel = new ViewModelShiftSubSpecialties();
var checkBoxList = new List<ViewModelCheckBox>();
foreach (var item in gradeSubSpecialties)
{
ViewModelCheckBox chkBox = new ViewModelCheckBox { Id = item.subID.ToString(), Name = item.ListSubSpecialty.description, Checked = false, Specialty=item.ListSubSpecialty.ListItemParent.description };
checkBoxList.Add(chkBox);
}
viewModel.SpecialtyList = checkBoxList;
return View(viewModel);
私のviewmodelsを移入私はまた
@Html.HiddenFor(x => x.Id)
@Html.CheckBoxFor(x => x.Checked)
@Html.LabelFor(x => x.Name, Model.Name)<br />
私のチェックボックスを表示するためにEditorTemplateとして使用されている部分図を持っています
私の見解では、Model.Specialtyをフィルタリングし、それを分類しようとしています3 checkboxlistsにMSがすなわち自分の専門に基づいて:
@foreach (var sub in Model.SpecialtyList)
{
if (sub.Specialty.Equals("Medicine"))
{
@Html.EditorFor(m => m.SpecialtyList)
}
else if (sub.Specialty.Equals("Surgery"))
{
@Html.EditorFor(m => m.SpecialtyList)
}
else if (sub.Specialty.Equals("Pathology"))
{
@Html.EditorFor(m => m.SpecialtyList)
}
}
をしかし、これは何これは私を与えることは第一または第二CheckBoxListの中には何もあり、中にすべてのリスト項目ではありません、まったく動作していないようです3番目のチェックボックスリスト。このような基本的に私は何を達成しようとしているある
誰かが私にこの作業を取得するためにいくつかのポインタをお願いできますか?
ありがとうございました。
デバッグして、Model.SpecialtyListアイテム0と1のインデックス要素を確認してください – Yorgo
これを使ってみましたか:@Html.EditorFor(m => sub) '? –
だから実際に何を得ているのですか? – mattytommo