• یک نکته کوتاه در مورد Delete و Update در Entity FrameWork.
یک نکته کوتاه در مورد Delete و Update در Entity FrameWork.
1395/03/17 - 21:06:37 // MVC 5 & 6 // 1 نظر // 5258 بازدید

اکثر ما جهت Update یا Delete کردن یک رکورد در EF رکورد مورد نظر را به صورت یک Object در ابتدا Find کرده و پس از حذف آن از مجموعه آن Object ، از طریق دستور SaveChanges آنرا به کلی حذف میکنیم یا برای Update ابتدا آنرا یافته و سپس بقیه مراحل ... .

بسمه تعالی

یک نکته کوتاه در مورد Delete و Update در Entity FrameWork.

اکثر ما جهت Update یا Delete کردن یک رکورد در EF رکورد مورد نظر را به صورت یک Object در ابتدا Find کرده و پس از حذف آن از مجموعه آن Object ، از طریق دستور SaveChanges آنرا به کلی حذف میکنیم یا برای Update ابتدا آنرا یافته و سپس بقیه مراحل ... .

خوب برای Update این منطقی است چون باید بعضی از مقادیر تغییر کند ، ولی برای حذف الزاما لازم به فراخوانی آن رکورد نیست . به مثال زیر دقت کنید .

این عملی است که به صورت معمول انجام میشود .

 

  1. Customer cust = New Customer();  
  2.   
  3. cust = db.Customers.Find("A123");  
  4.   
  5. db.Customers.Remove(cust);  
  6.   
  7. db.SaveChanges();  

 

در مثال بالاCust حاوی رکورد یافت شده است . آیا میتوان از انجام این عمل صرفه نظر نمود و رکورد با جستجو نکرده و به صورتی تقریبا مستقیم آنرا حذف نمود ؟.

به تکه کد زیر دقت کنید .

 

  1. Customer cust = new Customer();  
  2.   
  3. cust.CustId = "A123";  
  4.   
  5. db.Customers.Attach(cust);  
  6.   
  7. db.Customers.Remove(cust);  
  8.   
  9. db.SaveChanges();  

 

ظاهرن عمل کردن به شکل بالا اندکی Optimum تر به نظر میرسد.

علی کلاهدوزان
معرفی نویسنده : علی کلاهدوزان

سلام بر دوستان ،
شاید رایج است به عنوان پروفایل کاربر ، چند خطی راجع به خودم بنویسم ، ولی وضعیت کاری و سوابق من با یک جستجوی ساده در گوگل مشخص خواهد شد ، لذا سرتان را با مطالب بی مورد به درد نیاورم بهتر است . اگر نکته خاصی لازم بود بدانید در قسمت "ایلیا سافت در یک نگاه" به احتمال زیاد یافت خواهد شد . جزئیات بیشتر را سوال کنید ، آدرس ایمیل Ali@Kolahdoozan.com همیشه جوابگوی شماست .امیدوارم از مطالب سایت استفاده کرده باشید . شاد و پیروز باشید .

امتیاز به مطلب
           
نظرات کاربران
  • علیرضا کرمی
    1395/08/03 - 16:03:23

    0
    0
    سلام این تابع Attach کارش چیه شاید سوال مبتدی باشه ولی من ندیدم تا حالا همچین چیزی سرچ هم کردم چیز خاصی دستگیرم نشد میشه توضیح بدید
ارسال نظر