2011-05-05 33 views
3

我收到「行未找到或更改異常」。將Linq中的ChangeConflictException更改爲SQL

System.Data.Linq.ChangeConflictException: Row not found or changed. at 
System.Data.Linq.ChangeProcessor.SubmitChanges(ConflictMode failureMode) at 
System.Data.Linq.DataContext.SubmitChanges(ConflictMode failureMode) 
at System.Data.Linq.DataContext.SubmitChanges() 

我該如何判斷哪個列導致異常?

謝謝。

+0

您可以發佈您的linq源碼嗎? – SaravananArumugam 2011-05-05 18:48:23

回答

2

請參閱How to: Retrieve Member Conflict Information (LINQ to SQL)如果您只想要代碼示例代碼。

默認情況下,在Linq2Sql中,每個屬性都包含在樂觀併發檢查中。您可以通過將Linq2Sql類中的Column屬性的UpdateCheck屬性設置爲Always(默認值),NeverWhenChanged,以僅在併發檢查中包含列(如果其值發生更改),來自定義此行爲。它在MSDN上有更詳細的介紹:Optimistic Concurrency Overview (LINQ to SQL)

相關問題