2010-09-06 37 views
0

在Silverlight 4 RIA中新的DomainService的introductory tutorial之後,出現意外的異常。當我執行更新時,屬性EntitiesInError[index].EntityConflict.PropertyNames會拋出以下異常:Silverlight 4 DomainService - EntitiesInError - EntityConflict - PropertyNames拋出InvalidOperationException

InvalidOperationException:PropertyNames不可用於刪除衝突。

服務方法執行:

public void UpdateSr_Supplier(sr_Supplier currentsr_Supplier) 
{ 
    // UPDATE the existing sr_Supplier 
    this.ObjectContext.sr_Supplier.AttachAsModified(currentsr_Supplier, this.ChangeSet.GetOriginal(currentsr_Supplier)); 
} 

從上this thread答案我猜,我應該還是用自定義的服務對象啓用Silverlight的服務(DataContractDataMember),然後將這些定製服務的價值對象到實際的服務器對象(從數據庫模型生成,即Linq到Sql或實體數據模型),並在DataContext上手動調用SubmitChanges()

回答

0

如果您處理的錯誤是刪除衝突,則PropertyNames將引發異常,這是正常的。你應該在尋找潛在的數據庫錯誤,這可能會忽略設置非空值或主鍵違規等。

+0

它一旦將我的身份設置更改爲公共,就可以工作。我想我應該使用自定義只讀規則的元數據而不是實體設計器。 – 2010-11-08 10:01:14

相關問題