خانه \\ MVC 5 & 6 \\ یک نکته کوتاه در مورد Delete و Update در Entity FrameWork.
یک نکته کوتاه در مورد Delete و Update در Entity FrameWork.
1395/03/17 - 21:06:37 // MVC 5 & 6 // 1 نظر // 5617 بازدید
اکثر ما جهت Update یا Delete کردن یک رکورد در EF رکورد مورد نظر را به صورت یک Object در ابتدا Find کرده و پس از حذف آن از مجموعه آن Object ، از طریق دستور SaveChanges آنرا به کلی حذف میکنیم یا برای Update ابتدا آنرا یافته و سپس بقیه مراحل ... .
بسمه تعالی
یک نکته کوتاه در مورد Delete و Update در Entity FrameWork.
اکثر ما جهت Update یا Delete کردن یک رکورد در EF رکورد مورد نظر را به صورت یک Object در ابتدا Find کرده و پس از حذف آن از مجموعه آن Object ، از طریق دستور SaveChanges آنرا به کلی حذف میکنیم یا برای Update ابتدا آنرا یافته و سپس بقیه مراحل ... .
خوب برای Update این منطقی است چون باید بعضی از مقادیر تغییر کند ، ولی برای حذف الزاما لازم به فراخوانی آن رکورد نیست . به مثال زیر دقت کنید .
این عملی است که به صورت معمول انجام میشود .
- Customer cust = New Customer();
-
- cust = db.Customers.Find("A123");
-
- db.Customers.Remove(cust);
-
- db.SaveChanges();
در مثال بالاCust حاوی رکورد یافت شده است . آیا میتوان از انجام این عمل صرفه نظر نمود و رکورد با جستجو نکرده و به صورتی تقریبا مستقیم آنرا حذف نمود ؟.
به تکه کد زیر دقت کنید .
- Customer cust = new Customer();
-
- cust.CustId = "A123";
-
- db.Customers.Attach(cust);
-
- db.Customers.Remove(cust);
-
- db.SaveChanges();
ظاهرن عمل کردن به شکل بالا اندکی Optimum تر به نظر میرسد.
معرفی نویسنده : علی کلاهدوزان
سلام بر دوستان ،
شاید رایج است به عنوان پروفایل کاربر ، چند خطی راجع به خودم بنویسم ، ولی وضعیت کاری و سوابق من با یک جستجوی ساده در گوگل مشخص خواهد شد ، لذا سرتان را با مطالب بی مورد به درد نیاورم بهتر است . اگر نکته خاصی لازم بود بدانید در قسمت "ایلیا سافت در یک نگاه" به احتمال زیاد یافت خواهد شد . جزئیات بیشتر را سوال کنید ، آدرس ایمیل Ali@Kolahdoozan.com همیشه جوابگوی شماست .امیدوارم از مطالب سایت استفاده کرده باشید . شاد و پیروز باشید .