0

我正在使用實體框架5.我正在尋找更好的方法來更新多個記錄。人們正在談論EF Extensions。但我不確定如何在我的場景中使用它。使用實體框架更新多個記錄

這是我的方法簽名。

internal void Update(List<Models.StockItem> stockItemsUpdate) 

我需要更新所有相應的stockitem實體。

using (var context = new eCommerceEntities()) 
{ 
    var items = context.StockItems.Where(si => stockItemsUpdate.Select(it => it.ID).Contains(si.ID)); 
} 

我相信上面的查詢會返回這些實體。

如何在此場景中使用EF擴展?

謝謝。

回答

0

EntityFramework.ExtendedBatchExtensions有一個Update擴展方法與此簽名:

public static int Update<TEntity>(
     this IQueryable<TEntity> source, 
     Expression<Func<TEntity, TEntity>> updateExpression) 

您可以使用此如下:

items.Update(item => new StockItem { Stock = 0 }); 

設定股票的選擇項爲0 。

+0

看着它的git倉庫。這似乎是一個非常錯誤的圖書館。 – shashwat