私は MVC 4 を使用しており、以下のモデルを定義しており、ビューでも同じものを使用しています。
ビューにアイテムを表示し、各都市のチェックボックスをレンダリングしたい。そのため、ユーザーは特定のアイテムに対して複数の都市を選択できます。
public class City
{
int id{get;set;}
string name{get;set;}
}
public class Item
{
int id{get;set;}
List<City> cities{get;set;}
}
public class ItemController{
public ActionResult Save(Item item){
List<city> selectedCitirs=item.cities; // here null
return View();
}
public ActionResult Get(int id){
Item item=Service.GetItem(id);
return View(item);
}
}
@model item
@foreach(City c in item.cities){
@Html.CheckBoxFor(c=>c.name)
}
コントローラーで、選択した都市名を取得し、city1、city2、city3 形式のような DB に保存したいと考えています。
しかし、コントローラーはitem.citiesを与えていません。実行する方法?