باسلام و عرض خسته نباشید.
شما در جلسه یازدهم (ویرایش شخص) جهت برطرف کردن خطای EntityState.Modified از کد زیر استفاده کردید:
()<var local = yourDbContext.Set<YourModel
Local.
;(FirstOrDefault(f => f.Id == yourModel.Id.
(if (local != null
}
;yourDbContext.Entry(local).State = EntityState.Detached
{
سوال بنده این هست که چرا در تعریف local از این روش استفاده شده؟ چرا مانند قبل از روش:
;(var local = db.Customers.FirstOrDefault(f => f.CustomerID == customer.CustomerID
یا حتی ساده تر:
;(var local=db.Customers.find(customer.CustomerID
استفاده نشده؟
با تشکر.
سلام
چون رکورد توسط Change Tracker در حال استفاده بود و نمیزاشت تغییر کنه برای همین Detached کردیم تا آزاد بشه
بله این قسمت رو متوجه هستم. سوالم این بود که چرا متغیر local به این شیوه مقدار دهی شد و از set. و Local. استفاده کردید؟ نمشید با روش (db.customers.find(id اون رو مقدار دهی کنیم؟ (همونطور که در سوالم مطرح کردم)
در واقع چک کردیم اگر داخل dbset بود اون رو detach کردیم
دستورش کاملا مشخصه
ممنونم از پاسخگویی سریعتون.