我有一个使用Entity Framework 6执行表插入的方法。该表有一个ID字段,在写入SQL Server时会自动填充。我希望该方法返回以前在ModelState中的所有数据以及新记录。当我运行这段代码时,除了新记录的ID之外,我得到的所有内容都以0回显。
我如何重做这个,以便返回新ID以及ModelState中的其余数据?
[AcceptVerbs(HttpVerbs.Post)]
public ActionResult EditingInline_Create([DataSourceRequest] DataSourceRequest request, Book book)
{
if (bookViewModel != null && ModelState.IsValid)
{
MyRepository db = new MyRepository();
db.Books.Add(book);
db.SaveChanges();
}
return Json(ModelState.ToDataSourceResult());
}
答案 0 :(得分:1)
功能添加使用正确的id参数添加的db结果返回。
试试这个:
book = db.Book.Add(book);
它可以满足您的需求。
如果你想要返回模型和模型状态,请使用:
return Json(new[] { book }.ToDataSourceResult(request, ModelState);