是否有預構建的ModelBinder可以與LINQ一起使用從DataContext獲取對象並在HTTP Post上更新它?ASP.NET MVC,LINQ和ModelBinders
例如,目前我的代碼塊:
[AcceptVerbs (HttpVerbs.Post)]
public ActionResult Edit (Project project)
{
var projectService = Factory.GetService<IProjectService>();
project = projectService.GetProject (project.ProjectId);
UpdateModel<Project> (project);
if (!ModelState.IsValid)
return View (project);
project = projectService.SaveProject (project);
return RedirectToAction ("Details", new { id = project.ProjectId });
}
(IProjectService包紮呼叫到LINQ數據上下文)
爲了實際經由LINQ執行更新到數據庫數據上下文,我需要再次獲取項目實例,然後更新該實例。
任何嘗試簡單地保存項目實例而不先從數據上下文中獲取結果都不會將任何內容寫回數據庫 - 我假設因爲LINQ數據上下文對它沒有做任何事情的對象一無所知用它。
在Projects表類上使用Attach方法或者btw不起作用,它會引發異常。
就是這樣,謝謝羅伯特! – Kieron 2009-08-19 07:44:18
SutekiShop有很多優秀的代碼,很高興它爲你工作。 – 2009-08-19 13:55:55