0

我有一種方法可以使用Entity Framework 6對錶執行插入操作。表中有一個ID字段,它在寫入SQL Server時會自動填充。我希望該方法返回之前在ModelState中的所有數據以及新記錄。當我運行這段代碼時,除了新記錄的ID之外,我得到的所有內容都以0返回。使用自動增量ID更新ModelState的數據

我該如何修改它,以便返回新的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()); 
    } 

回答

1

功能從db的返回結果中添加正確的id參數。

試試這個:

book = db.Book.Add(book); 

它給你想要的東西。

如果你想回報模型和ModelState中使用這樣的:

return Json(new[] { book }.ToDataSourceResult(request, ModelState); 
+0

這就是我失蹤了。現在效果很好,謝謝! – Rethic

+0

沒問題:) :) –