आपको डीबी टाइमस्टैम्प/रोवर्जन सुविधा का उपयोग करने की कोशिश करनी चाहिए। ईएफ में आप बाइटएरे घोषित करते हैं और इसे समवर्ती जांच फ़ील्ड के रूप में नामित करते हैं। डीबी सृजन पर मूल्य निर्धारित करता है। बाद के सभी अपडेट मान की जांच कर सकते हैं कि डीबी अपडेट रोवर्जन को उचित रूप में नहीं बदला गया है। यह दृष्टिकोण SQL सर्वर पर काम करता है। इसे MYSql पर उसी तरह व्यवहार करना चाहिए।
public abstract class BaseObject {
[Key]
[Required]
public virtual int Id { set; get; }
[ConcurrencyCheck()]
public virtual byte[] RowVersion { get; set; }
}
या धाराप्रवाह के माध्यम से यदि आप//प्राथमिक Keythis.HasKey(t => t.Id);
पसंद करते हैं // Properties
//Id is an int allocated by DB , with string keys, no db generation now
this.Property(t => t.Id).HasDatabaseGeneratedOption(DatabaseGeneratedOption.Identity); // default to db generated
this.Property(t => t.RowVersion)
.IsRequired()
.IsFixedLength()
.HasMaxLength(8)
.IsRowVersion(); //<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
आशावादी समवर्ती पैटर्न पर दस्तावेज़