PDA

View Full Version : حرفه ای: آپدیت یک رکورد با Linq , EF



hmahdavi921
دوشنبه 15 شهریور 1395, 15:29 عصر
سلام
چطور با linq روی EF میشه تنها یک رکورد از جدول رو آپدیت کرد؟
این کد تمام فیلد ها رو آپدیت میکنه.

SubInsurance subInsurance = new SubInsurance();
subInsurance = _db.SubInsurances.FirstOrDefault(insurance => insurance.bimehNo == bimeNo);
_db.Entry(subInsurance).State = EntityState.Modified;
_db.SaveChanges();
با تشکر

anubis_ir
دوشنبه 15 شهریور 1395, 18:19 عصر
شما زمانيكه با كوئري گرفتن يك شيء رو بر مي‌گردوني، خودبخود داخل سيستم tracking قرار مي‌گيره. يعني نيازي نيست سطر بعدش بنويسي EntityState.Modified تا تمام خواصش رو به اجبار وارد سيستم رديابي كنه، اون هم از نوع تغيير يافته. سطر EntityState.Modified مربوط به حالتي هست كه شما يك شيء رو داري ولي از بانك اطلاعاتي واكشي نشده و مي‌خواي به EF معرفيش كني.

hmahdavi921
دوشنبه 15 شهریور 1395, 21:09 عصر
سيستم tracking رو باهاش آشنا نیستم. اگر امکانش هست کدی رو بزارید تا بهتر متوجه راه حل بشیم.