چک کردن فیلدهای تغییر داده شده هنگام update
سلام
آیا راهی هست که بتوانیم قبل از اجرای دستور update در ef چک کنیم که آیا اصلا فیلدی تغییر کرده یا خیر؟
یا فقط همان فیلد را به روز رسانی کنیم؟
یعنی اگر کاربر فرم را باز کرد و هیچ تغییر نداد اصلا دستور بروز رسانی اجرا نشود و فرم بسته بشود؟
var model = await _uw.BaseRepository<person>().FindByIdAsync(viewmod el.PatientID);
if (model == null)
return NotFound();
if (ModelState.IsValid)
{
model.PhoneNumber = viewmodel.PhoneNumber;
model.Address = viewmodel.Address;
model.BirthDate = viewmodel.PersianBirthDate.ConvertShamsiToMiladi() ;
model.FirstName = viewmodel.FirstName;
model.LastName = viewmodel.LastName;
model.FatherName = viewmodel.FatherName;
model.Gender = viewmodel.Gender;
model.image = viewmodel.Image;
_uw.BaseRepository<Patient>().Update(model);
await _uw.Commit();
در Sql چک کردم به صورت خودکار فیلدهایی که تغییر نکرده را به روز رسانی نمیکند.
ولی کاربری که بی دلیل دائما edit میکند و ذخیره میکند را به چه صورتی میتوانی کنترل کرد؟
در جداولی که حجم دیتا بالاست باعث مشکل میشه
نقل قول: چک کردن فیلدهای تغییر داده شده هنگام update
سلام. به نظرم باید از entityState ها استفاده کنید.
این لینک ها رو ببین:
لینک اول
لینک دوم
لینک سوم