我在谷歌搜索,但它似乎太明顯,沒有人談論這一點。如何使用EF更新控制器中的對象?
我有我的表的存儲庫,我想能夠更新我的分貝。
在LINQ2SQL你有這樣的:
public void SaveCar(Car car)
{
if (carTable.GetOriginalEntityState(car) == null)
{
carTable.Attach(product);
carTable.Context.Refresh(RefreshMode.KeepCurrentValues, car);
}
carTable.ContextSubmitChanges();
}
,並在控制器,只需撥打該帖子編輯方法這個方法。
我如何在EF中做這樣的事情?更好的方法。
我看到使用TryUpdateModel(模型)的代碼,但我不知道該更新了我對DB或我得先挑對象和使用的FormCollection更新...
我我很困惑,我只需要從表格中獲取一輛車,並使用數據庫中的相同ID更新汽車。那麼,我必須在控制器和存儲庫中做什麼?
謝謝。
編輯:如果我不清楚,我真的不知道,如果我把那裏是我需要轉換到EF。我只想知道如何使用EF更新對象的實例(EFCodeFirst就是我使用的)。我如何從表單接收實例並在db中更新它。
檢查這個答案:http://stackoverflow.com/questions/3594515/how-to-update-an-entity-in-entity-framework-4-net/3594608#3594608它不是直接關係到MVC,但它顯示了處理儲蓄的兩種不同方法。在MVC中使用TryUpdateModel。 – 2011-02-28 07:05:56
我的上下文沒有ObjectStateManager(我的上下文是由EFCodeFirst手動創建的),所以我不能使用它。但是,謝謝:) – 2011-02-28 13:05:04