0
我有一個使用數據庫優先的實體框架的新項目。這是因爲它查看了幾個不同客戶站點上已經存在的sql數據。我們有時發現的一個問題是數據庫我們的結尾和客戶的數據庫之間存在細微的差異。例如,我們可能有一個可爲空的字段,某些客戶將其設置爲非空,然後在其結尾處導致EF錯誤。我不知道乳清在他們附近有什麼不同之處。需要幫助循環和測試實體框架中的實體
我已經通過dbsets循環了以下代碼,但我似乎無法創建一個sql查詢,通過dbset類型運行查詢來測試它是否與數據庫相匹配,任何人都可以幫助嗎?
System.Data.Entity.Core.Objects.ObjectContext ctx = ((System.Data.Entity.Infrastructure.IObjectContextAdapter)db).ObjectContext;
System.Data.Entity.Core.Metadata.Edm.MetadataWorkspace workspace = ctx.MetadataWorkspace;
IEnumerable<System.Data.Entity.Core.Metadata.Edm.EntityType> tables = workspace.GetItems<System.Data.Entity.Core.Metadata.Edm.EntityType>(System.Data.Entity.Core.Metadata.Edm.DataSpace.SSpace);
foreach (var table in tables)
{
var tableSchema = table.MetadataProperties["TableName"].Value.ToString();
// Need something here to dynamically select all results
// If could pass the Entity Type to db.Database.SqlQuery<type> problem would be solved
}
我們正在談論數百個表格,我試圖避免自己手動檢查所有列。 – user1166905
也因爲它的數據庫第一,而不是代碼第一,我不能使用CompatibleWithModel – user1166905
因此,你可以比較查詢結果編程與您的項目中的類屬性。 – JoeJoe87577