Silverlight 5、RiaおよびEntity Frameworkを使用しているときに問題が発生しています。エンティティria保存後のナビゲーションプロパティ値の削除
変更されたエンティティを保存すると、SubmitChanges()呼び出しが返され、エンティティのナビゲーションプロパティの一部がnullに設定されます。保存が正しく行われました。正しい値が保存され、後でエンティティが呼び出されると正しく値が読み込まれ、適切な値でナビゲーションプロパティが設定されます。
しかし、クライアントのコンテキストがnull値で更新取得され、画面の検証がで蹴っている保存直前に設定
これはなぜ起こっているのですか?
私は保存後にデータを更新しようとしました。 LoadBehavior.RefreshCurrentを使用して、画面を埋めるために使用されたのと同じクエリを呼び出すことによって、データは親によってリコールされているため、リフレッシュされると、すべての子エンティティのナビゲーションプロパティがnullに設定されるようになりました。変更されたエンティティだけではありません。
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);
}
誰もが、彼らが保存された後、私は私の値を保つのを助けることはできますか?