0
我使用EF 4.0,我在我的數據庫中有一個帶有時間戳字段的表,因爲我想控制此表中的併發性。時間戳和併發問題
然後,我創建了我的edmx,並使用模板DBContext生成了POCO類。
我做的第一個嘗試是在edmx中的timestamp字段中,我將存儲的生成模式設置爲none。然後在我的代碼我做:
myContext.MyTable.Attach(myEntity);
myContext.Entry<MyTable>(myEntity).Property(p => p.AnyFieldNoTimestamp).IsModified = true;
myContext.SaveChanges();
這給我一個例外,說不能更新時間戳列。
如果我有我只標記了一個字段進行修改,並且這個字段不是時間戳,爲什麼我得到這個錯誤?
然後我嘗試將edmx中的Propery存儲生成模式設置爲Indentity。
真的我有一個事務和兩個saveChanges。在第二次嘗試中,第一個savechanges不會給出任何錯誤,但在第二個savechanges中,我得到的影響是excepcion 0行,因爲它看起來實體的時間戳已經從第一個savechanges更改爲第二個,所以在併發控制我得到這個excepction。
所以我想知道如何使用一個事務中的時間戳字段和兩個保存chages。
謝謝。