我將我的實體框架4.3數據庫第一個項目升級到新的實體框架5.
顯然,我現在使用DbContext而不是ObjectContext。
實體框架LoadProperty 5
我用新的替換了舊的.edmx文件。我的老業務代碼,以前用我的4.3 .edmx文件,現在有使用LoadProperty
方法的代碼的問題:
using (var context = new MyEntities())
{
Models.User user = context.Users.First(x => x.GUID == guid);
context.LoadProperty(user, o => o.Settings);
return user;
}
似乎LoadProperty不在的DbContext的有效手段。
無論如何,我怎樣才能獲得強大的類型加載?
我想我可以用
context.Users.Include("Settings")
,但不是強類型和容易拼寫錯誤。
你沒有使用EF4.3如果你使用ObjectContext - EF4.3基本上都是關於DbContext的......如果啓用延遲加載,你可以直接使用.Settings屬性而不必顯式加載它。請注意,它可能會觸發數據庫之旅,所以如果您經常這樣做,使用.Include()如下所示可能會更便宜。 – Pawel
@Pawel:哦,對不起。我讀了一個關於更新後遇到的另一個問題的問題,並用「apprently」引用它來更好地描述我的情況。我通過了這句話。 – citronas