목록 상자의 항목을 미리 선택하는 데 문제가 있습니다. mvc 3과 함께 면도기 뷰 엔진을 사용하고 있습니다. 동일한 문제가있는 게시물이 몇 개 있지만 나에게 도움이되지 않습니다. 클래스에서Multiselect-Listbox (MVC3 면도기)의 항목을 미리 선택하십시오.
번호 : 모델에
public class Foo{
private int _id;
private string _name;
public string Name{
get{
return _name;
}
public int Id {
get{
return _id;
}
}
코드 : cshtml에서
public class FooModel{
private readonly IList<Foo> _selectedFoos;
private readonly IList<Foo> _allFoos;
public IList<Foo> SelectedFoos{
get{ return _selectedFoos;}
}
public IList<Foo> AllFoos{
get{ return _allFoos;}
}
}
코드 :
@Html.ListBoxFor(model => model.Flatschels,
Model.AllFlatschels.Select(fl => new SelectListItem {
Text = fl.Name,
Value = fl.Id.ToString(),
Selected = Model.Flatschels.Any(y => y.Id == fl.Id)
}), new {Multiple = "multiple"})
나는 다른 많은 것들을 시도했지만 아무것도 작동하지 않습니다. 누군가가 도울 수 있기를 바랍니다.
고마워요. 나는 그것을 작동 시켰어. 두 번째 코드 만 작동하고 그것이 나에게 보이 긴하지만 ToString()을 재정의 한 것이 아닙니다. 내 ID 속성은 int이고 고유 한 문자열 (guid.ToString())을 반환하는 속성 키를 추가했습니다. – Tobias
이상한. ToString을 설명 할 수는 없지만 그것을 기쁘게 정리했습니다 :-) –
ToString() 때문에 분명히있었습니다. Microsoft 포럼에 질문을 올렸습니다. 답변을 얻으 려니와 아마 왜 정보를 (현재 얼마나 오래) 가지고 있었는지 알 수 있습니다. – Tobias