5
在下面的函數中,在context.SaveChanges()之後,實體PropertyType始終爲空。我只是從使用ObjectContext轉換爲DBContext(首先是數據庫),並在更改之前,它工作正常,現在它不。有什麼我失蹤?在SaveChanges實體框架後延遲加載不工作
我檢查PropertyTypeID,它被正確寫入並存在於數據庫中。所有關係都在db和edmx文件中正確設置。生成的.tt文件將PropertyType對象顯示爲虛擬。這是EF 5.
下面是代碼(實體屬性的非重要任務已被移除):預先
private ListingTransferDetail BeginListingTransferDetailReport(int PropertyTypeID)
{
ListingTransferDetail transfer_detail = new ListingTransferDetail();
transfer_detail.PropertyTypeID = PropertyTypeID;
using (IDXEntities context = new IDXEntities())
{
context.ListingTransferDetails.Add(transfer_detail);
context.SaveChanges();
TransferProgress += "<br /><br /><strong>" + DateTime.Now + "</strong>: Transfer initialized for property type \"" + transfer_detail.PropertyType.DisplayName + "\".";
}
return transfer_detail;
}
感謝。
編輯
我發現,如果我添加的SaveChanges()後,這行代碼,它的工作原理。但是,這並不理想,我怎麼能使它默認加載實體?
context.Entry(transfer_detail).Reference(a => a.PropertyType).Load();
再次感謝。
這解決了我的問題。但是,這樣做需要在實例化上下文之後創建實體。因此,如我的編輯中所示,手動加載引用會更好。謝謝您的幫助! – Ricketts