我正試圖完成我認爲很簡單的任務。我無法圍繞它思考。將控制器中的整數傳遞給視圖mvc
我有一個組織列表,它只是OrganizationID和Name。我想要做的就是在每個組織旁邊都有一個「添加」鏈接,就像編輯一樣,就像刪除和編輯按鈕一樣。
它會抓取OrganizationID並將其傳遞給其他控制器中的其中一個「創建視圖」,並自動填寫OrganizationID字段。
添加鏈接只會指向具有DropDownList的View。然後,用戶將選擇其中一個選項,例如地址,將地址添加到從組織列表中選擇的組織。用戶選擇地址後,他們點擊提交按鈕。然後它將轉到OrganizationAddress創建視圖並自動填充OrganizationID字段。
我真的很希望我解釋得很好。
這是我OrganizationController
public ActionResult Add(int id)
{
using (var db = new VAGTCEntities())
{
ViewBag.OrgPages = ddp.PageList();
return View(db.Organizations.Find(id));
}
}
拿過組織添加的ActionResult。
這裏是我添加視圖形式:
<fieldset>
<legend>Organization</legend>
@Html.HiddenFor(model => model.OrganizationID)
<div class="editor-label">
@Html.Label("Add:")
</div>
<div>
@Html.DropDownList("OrgPages")
</div>
<p>
<input type="submit" value="Save" />
</p>
</fieldset>
}
這裏是我的OrganizationController
[HttpPost]
public ActionResult Add(int id, Organization organization, int OrgPages)
{
try{
ViewBag.OrgID = id;
if (OrgPages == 2)
return RedirectToAction("Create", "OrgAddress");
else if (OrgPages == 3)
return RedirectToAction("Create", "OrgIE");
else if (OrgPages == 4)
return RedirectToAction("Create", "OrgMembership");
else if (OrgPages == 5)
return RedirectToAction("Create", "OrgBusinessType");
else if (OrgPages == 6)
return RedirectToAction("Create", "OrgIndustryType");
else if (OrgPages == 7)
return RedirectToAction("Create", "OrgPhone");
else if (OrgPages == 8)
return RedirectToAction("Create", "OrgEmail");
else if (OrgPages == 9)
return RedirectToAction("Create", "OrgWebsite");
else if (OrgPages == 9)
return RedirectToAction("Create", "OrgNote");
else
return RedirectToAction("Index");
}
catch (Exception)
{
ModelState.AddModelError("Error", "This item exists in the database already.");
ViewBag.OrgPages = ddp.PageList();
}
return View(organization);
}
添加POST的ActionResult在這裏,我無法弄清楚。我試圖通過的任何結果都是空的。 我還是MVC的新手 - 慢慢地,慢慢地學習我的方式!
非常感謝!
非常好!非常感謝! – cfisher