2010-10-04 39 views
2

使用WCF RIA Services和實體框架4.組成問題:實體當前只讀

我有3層的DTO:學校,國家,地區。 狀態DTO具有具有以下組成的區屬性。學校DTO擁有一個有組成和地區協會的州財產。

的想法,就是當我們創建/更新的一所學校,我們也允許用戶進入狀態,區(可現有的或新的)。

當創建一個新的州和地區,一切工作正常。但是,當我創建只是現有狀態的內部新區,我得到以下錯誤:「該實體當前只讀之一存在以下情況:一個自定義的方法已被調用,提交操作過程中,或編輯操作不支持實體類型」

+0

你這個隨時隨地?我遇到了同樣的錯誤,除非它只發生很少,並且很難重現。我希望我能弄清楚調試這個好方法... – Skrymsli 2010-12-07 06:22:21

回答

3

我就遇到了這個一個今天確定我的錯誤是在錯誤消息中描述的第二個問題引起:‘提交操作正在進行中’。

這裏是我的不正確代碼:

dim c as new Car() 
myContext.Cars.add(c) 
myContext.SubmitChanges() 
c.Color = "Red" 

注意,我錯誤地改變了實體的SubmitChanges調用後。雖然之前我修改我的實體發生的SubmitChanges,異步的SubmitChanges發生,所以沒有保證之前,我修改了實體的變化將被提交。

以下是更正代碼:

dim c as new Car() 
myContext.Cars.add(c) 
c.Color = "Red" 
myContext.SubmitChanges()