मैं EF6 का उपयोग करके रिकॉर्ड को अपडेट करने की कोशिश कर रहा हूं। पहले रिकॉर्ड ढूंढना, यदि मौजूद है, तो उसे अपडेट करें। यहाँ मेरा कोड है: -
var book = new Model.Book
{
BookNumber = _book.BookNumber,
BookName = _book.BookName,
BookTitle = _book.BookTitle,
};
using (var db = new MyContextDB())
{
var result = db.Books.SingleOrDefault(b => b.BookNumber == bookNumber);
if (result != null)
{
try
{
db.Books.Attach(book);
db.Entry(book).State = EntityState.Modified;
db.SaveChanges();
}
catch (Exception ex)
{
throw;
}
}
}
हर बार जब मैं उपरोक्त कोड का उपयोग करके रिकॉर्ड को अपडेट करने की कोशिश करता हूं, तो मुझे यह त्रुटि मिल रही है: -
{System.Data.Entity.Infrastructure.DbUpdateConcurrencyException: स्टोर अपडेट, इंसर्ट या डिलीट स्टेटमेंट ने अप्रत्याशित संख्या में पंक्तियों को प्रभावित किया (0)। संस्थाओं को लोड किए जाने के बाद से एंटिटीज़ को संशोधित या नष्ट किया जा सकता है। ताज़ा करें ObjectStateManager को वापस आना
catch (Exception ex){throw;}
बेमानी है और आप इसे पूरी तरह से हटा सकते हैं।