我是 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);
}