簡體   English   中英

實體框架不保存新列

[英]Entity Framework not saving new column

我向 object 添加了一個新列,並使用 EF 從數據庫中更新了 model。

通常我們會做以下事情:

context.BulkInsert(records, GetBulkInsertOptions());
context.SaveChanges();

但這似乎不適用於新專欄。 如果我執行以下操作,它會起作用,但顯然並不理想。

foreach (var r in records)
{
    context.MyDBObject.Add(r);
    context.Entry(r).State = EntityState.Modified;
    context.SaveChanges();
}

任何人都可以闡明這一點嗎? 此外,如果我在保存之前刪除數據庫中的行,它將插入所有內容,除了我添加的新列。

編輯:使用實體框架 v6.2.0 和 EntityFramework.BulkInsert v6.0.3.8

編輯 2:如果我刪除該行,並嘗試僅使用以下內容插入一個新的 object

context.MyTable.Add(test);
context.SaveChanges()

這也會插入 object,但不包括我的新列。 這讓我相信它更多的是 EF 的錯誤,而不是我之前提到的 BulkInsert 的錯誤。

該問題是由 Mssql 中的表中的觸發器引起的。

context.Database.Log = Console.WriteLine; 幫助我們確定 Entity Framework 正在向 SQL 發送正確的查詢。測試 SQL 中的查詢表明未保存新列。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM