我是新來的MVC3,但到目前爲止我已經設法與我的代碼相處得很好。添加到窗體中的模型,然後重新顯示窗體以添加更多
現在,我想製作一個簡單的表單,它允許用戶輸入一個文本字符串,表示僱員的姓名。然後,我會希望將這個表單提交併存儲在我的模型中,並以某種形式列出。然後,表單應該重新顯示,用for-each循環寫出我已經添加的名稱。當我完成並繼續前進時,我需要將這些信息存儲到我的數據庫中。
我弄不清楚,是如何存儲這個臨時信息,直到我把它推到我的數據庫。每當我提交我就可以做,但這導致了我很多頭痛。
希望你們看看我想要做什麼,並有一個很棒的解決方案。 :)
這是我一直在努力做一個簡化版本:
型號
public class OrderModel
{
public virtual ICollection<Employees> EmployeesList { get; set; }
public virtual Employees Employees { get; set; }
}
public class Employees
{
[Key]
public int ID { get; set; }
public string Name { get; set; }
}
查看
@model OrderModel
@{
if (Model.EmployeesList != null)
{
foreach (var c in Model.EmployeesList)
{
@c.Name<br />
}
}
}
@using(Html.BeginForm())
{
@Html.TextBoxFor(m => m.Employees.Name)
<input type="submit" value="Add"/>
}
控制器
[HttpPost]
public ActionResult Index(OrderModel model)
{
model.EmployeesList.Add(model.Employees);
// This line gives me the error: "System.NullReferenceException: Object reference not set to an instance of an object."
return View(model);
}
非常感謝!這種方法非常完美。 – holaq 2012-04-21 12:23:29