2010-09-20 100 views
1

我有一個叫做Account的對象,它通過外鍵關係引用了一個時區。 在帳戶對象上,我可以看到TimeZone_Fk_Id以及對Account.TimeZoneAccount.TimeZoneReference的引用。如何更新實體框架4中的外鍵關係?

我想更新外鍵關係,但我無法弄清楚如何。 我已經嘗試了各種各樣的東西。我試圖直接設置TimeZone_Fk_Id,嘗試將Account.TimeZone設置爲新的時區,嘗試更新entitykeys等等。但似乎沒有任何工作。我沒有得到任何例外,但是當我在改變它之後檢查時區時,它仍然是舊值。

任何幫助是極大的讚賞

感謝 托馬斯

+0

你能展示一些代碼不工作? – 2010-09-21 08:28:45

+0

我嘗試了以下所有方法: Account.TimeZone_Fk_Id = 2; (確保有一個id爲2的時區記錄); tblTimeZone tz =從db獲取時區 Account.tblTimeZone = tz; Account.tblTimeZoneReference.Value = tz; Account.tblTimeZoneReference.EntityKey = tz.EntityKey; 我無法得到上述任何工作。每次我嘗試分配一個值時,它都不會更新對象。 任何想法? 謝謝 托馬斯 – Thomas 2010-09-21 19:01:16

回答

0

您是否嘗試過類似

Account account; 
TimeZone timeZone; 
//Get account instance 
//Get timeZone instance to update 
account.TimeZone = timeZone; 
context.SaveChanges(); 
+0

我想通了,這是我的編碼錯誤。在保存更改之前,我將時區設置與原始時區設置進行了比較。在這個過程中,新的時區設置被重置爲舊的時區。 – Thomas 2010-10-05 09:04:21