در مطلب های پیشین در مورد درج و واکشی داده ها و برخی از متدهای LINQ صحبت کردیم. در این مطلب می خواهیم در مورد بروز رسانی داده ها صحبت کنیم. در این مطلب در ساده ترین حالت می خواهیم نخسین سطر را بروز رسانی کنیم. برای این منظور باید گام های زیر را دنبال کنید.

۱ – واکشی تمامی سطرها بوسیله context.Users

۲ – بدست آوردن سطر نخست بوسیله متد ()First از LINQ

۳ – تغییر خصوصیت های دلخواه از نمونه بدست آمده از متد ()First

۴ – اعمال تغییرات بوسیله متد ()SaveChanges از DbContext

در خط ۱۵ از شکل زیر تمامی سطرهای جدول واکشی شده و در غالب اشیا سی شارپ درون متغیر allUsers ذخیره می شوند. سپس بوسیله متد ()Any از LINQ بررسی می کنیم که آیا سطری برگشت داده شده است یا نه؟ حال اگر سطری برگشت داده شده باشد، نخستین سطر بوسیله متد ()First واکشی می شود. توجه کنید گفتیم که Entity Framework به عنوان یک نگاشت دهنده، وظیفه نگاشت اشیا و متدهای سی شارپ را به جدول ها و کوئری های پایگاه داده و بلعکس وظیفه نگاشت سطرهای پایگاه داده و پاسخ های آمده از پایگاه داده به اشیا سی شارپ را دارد.

در خط های ۲۰ و ۲۱ از شکل بالا مقدارهای تازه ای برای خصوصیت های FirstName و Age از متغیر firstUser تعیین شده اند. باز هم تاکید می کنیم firstUser از نوع کلاس User است، پس می توانیم مقدار خصوصیت های آنرا نمایش دهیم و یا اینکه می توانیم مقدار خصوصیت های آنرا تغییر دهیم. در پایان برای اعمال تغییرات می بایست متد ()SaveChanges فراخوانی شود. توجه کنید چون ()SaveChanges عضوی از کلاس DbContext است و چون کلاس UserContext مشتق شده از کلاس DbContext است و چون متغیر context (درون عبارت user) نمونه ای از کلاس UserContext است، پس در فرمان ()context.SaveChanges به متد ()SaveChanges دسترسی پیدا کرده ایم.

دانلود سورس برنامه این مطلب DbContext Update