2つのモデルがあり、DropDownListに外部キー関係が設定された行をデータベースに挿入したいと思います。Itemモデルのデータは問題なく挿入されますが、ManufacturerIDは挿入されません(nullを挿入します)。理由がわかりませんでした。更新:プロジェクトを次の場所にアップロードしました:http://mvcapplication2.codeplex.com/
<div class="editor-label">
@Html.LabelFor(model => model.ManufacturerID,"Manufacturer")
</div>
<div class="editor-field">
@Html.DropDownList("ManufacturerID",string.Empty)
@Html.ValidationMessageFor(model => model.ManufacturerID)
</div>
public class Item
{
public int ItemID { get; set; }
public string Serial { get; set; }
public string ItemName { get; set; }
public int? ManufacturerID { get; set; }
public Manufacturer Manufacturer { get; set; }
}
public class Manufacturer
{
public int ManufacturerID { get; set; }
public string ManufacturerName { get; set; }
public List<Item> Items { get; set; }
}
public ActionResult Create()
{
ViewBag.ManufacturerID = new SelectList(db.Manufacturers, "ManufacturerID", "ManufacturerName");
return View();
}
[HttpPost]
public ActionResult Create(Item ıtem)
{
if (ModelState.IsValid)
{
db.Items.Add(ıtem);
db.SaveChanges();
return RedirectToAction("Index");
}
return View(ıtem);
}