我在使用Silverlight 5,Ria和實體框架時遇到問題。實體ria在保存後刪除導航屬性值
保存修改後的實體時,SubmitChanges()調用返回,其中一些實體的導航屬性設置爲null。保存正確發生;正確的值將被保存,如果稍後調用實體,則會正確讀取值,導航屬性將使用適當的值進行設置。
但客戶端的背景是越來越空值和屏幕驗證蹬更新
任何人都知道爲什麼會發生這種情況?
我試過刷新數據後保存;通過調用與LoadBehavior.RefreshCurrent相同的查詢來填充屏幕。數據正在被其父母調用,因此當它被刷新時所有子實體現在都將其導航屬性設置爲空。不只是修改的實體。
public kcc_Incentive GetKcc_IncentiveByID(Guid IncentiveID)
{
//kcc_Incentive Incentive = this.ObjectContext.kcc_Incentive.Where(i => i.IncentiveId == IncentiveID).FirstOrDefault();
//if (Incentive != null)
//{
// Incentive.kcc_IncentiveProductType.Load(); //these are the entities I'm having trouble with
// foreach (kcc_IncentiveProductType t in Incentive.kcc_IncentiveProductType)
// {
// t.rate_FullModelReference.Load();
// t.rate_BaseModelReference.Load();
// t.rate_SeriesReference.Load();
// }
//}
//return Incentive;
//getting same results regardless of how it is loaded
return ObjectContext.kcc_Incentive
.Include("kcc_IncentiveProductType.rate_FullModel")
.Include("kcc_IncentiveProductType.rate_BaseModel")
.Include("kcc_IncentiveProductType.rate_Series")
.Include("kcc_IncentiveProductType.rate_ProductType.dms_Make")
.FirstOrDefault(i => i.IncentiveId == IncentiveID);
}
任何人都可以幫我保存我的價值後,他們已被保存?