c#/ asp.net/mvcの初心者として、ビュー内のHtml.DropDownListからオブジェクトを取得する方法が見つかりません。リストからオブジェクトを取得する方法<typeObject> DropDownlistFor?
public ActionResult Index() {
MyViewModel mvm=new MyViewModel();
mvm.ListOfSomething=(my code to populate the List);
return View(vm);
}
ビューはここにある:私はコントローラに私のリスト<>を移入
public class Something {
public int Id {get;set;}
public string Name {get;set;}
public int AnotherProperty {get;set;}
}
:
public class MyViewModel {
public List<Something> ListOfSomething {get;set;} // A list of Somethings
public Something TheSomethingToGet {get;set;} // The object I want to get
}
"何か" オブジェクトとは、例えば次のとおりです。 はここに私のViewModelです:
@model Project.ViewModels.MyViewModel
@Html.LabelFor(m => m.ListOfSomething)
@Html.DropDownListFor(m => m.ListOfSomething, new SelectList(Model.ListOfSomething, "id", "name"), "-")<br/>
そして最終的には、[HttpPost]コントローラのインデックス:
[HttpPost]
public ActionResult Index(MyViewModel mvm) {
/* Here, how could I get the "Something" object that
was selected in the dropdownlist and can be identified
by the "id" property ?
*/
}
私は完全に間違っていますか?あなたが何をする必要があるか
'mvm.ListOfSomething.Where(o => o.Id == DropDownList.Selected.ID)'のようなものですが、dropdownlist.selected.idの部分はわかりません。 – hellyale