我有成我想要使用ASP.NET MVC控制器的UpdateModel
法(DB是一个LINQ到SQL数据上下文)插入一个新创建的对象GUID主键的表:我怎样才能让ASP.NET MVC的UpdateModel忽略主键列?
[AcceptVerbs(HttpVerbs.Post)]
public ActionResult Create(FormCollection collection)
{
Fields field = new Fields();
field.ID = Guid.NewGuid();
try
{
UpdateModel(field);
db.Fields.InsertOnSubmit(field);
db.SubmitChanges();
return RedirectToAction("Index");
}
catch
{
return View("Edit", field);
}
}
首先,它似乎很奇怪,对于编辑自动生成的意见,并在模型上创建将包括用户编辑一个主键字段,但它很容易删除这些。
但我运行到哪里调用UpdateModel
抛出主键时没有传递进来的形式集合的一部分异常的问题。
我是否缺少某种标记主键列的方式,因为用户(和扩展名,UpdateModel
)的呼叫不应该与?我可以添加一个includeProperties
数组,并保留主键的名称,但这不是非常干燥)。
我也可以隐藏字段添加到包含主键我的形式 - 一个GUID主键,我可以做到这一点的GET请求来创建。