"> اضافه ویرایش حذف با استفاده از Dapper | آموزش NET Core. | ام اس پی سافت

اضافه ویرایش حذف با استفاده از Dapper

حذف با استفاده از Dapper

در بخش سوم میرسیم به اضافه ویرایش حذف با استفاده از Dapper در NET Core. یکی از کاربردی ترین و جذاب ترین بخش های کار با Dapper این بخش است.

میتوانید بخش های  قبلی مقاله را در لینک‏ زیر مشاهده کنید.

بروز رسانی یک رکورد

بنابراین .. اینجاست که در مواردی کار با Dapper بسیار ناخوشایند است. می بینید ، برای به روزرسانی رکوردی ، از روشExecute  Dapper استفاده می کنیم:

 using (SqlConnection connection = new SqlConnection(connectionString)) { connection.Execute("UPDATE Event SET EventName = 'NewEventName' WHERE Id = 1"); } 

و البته ، می توانید از پارامترهای دارای دستور اجرا نیز استفاده کنید.

بنابراین ما می توانیم آن را تغییر دهیم تا شبیه به این موارد باشد:

 using (SqlConnection connection = new SqlConnection(connectionString)) { var eventName = "NewEventName"; var eventId = 1; connection.Execute("UPDATE Event SET EventName = @EventName WHERE Id = @EventId", new { EventName = eventName, EventId = eventId } ); } 

تصور کنید که می خواهیم چندین زمینه را به طور همزمان به روز کنیم که چگونه این دستور نا خوشایند دریافت شود؟

شاید این خوب باشد. ما فقط دقیقاً آنچه را که می خواهیم به روز کنیم می‌کنیم و نه بیشتر.

این نوع از جنس قدرت بزرگ مسئولیت پذیری “ responsibility “است

وارد کردن یک رکورد

اگر فکر کردید که به روزرسانی یک رکورد سخت است ، صبر کنید تا inserting را ببینید.

 using (SqlConnection connection = new SqlConnection(connectionString)) { connection.Execute("INSERT INTO Event (EventLocationId, EventName, EventDate, DateCreated) VALUES(1, 'InsertedEvent', '2019-01-01', GETUTCDATE())"); } 

در حقیقت تمام کاری که dapper واقعاً در حال انجام است اجرای دستور درج ( (inserting ) را انجام می دهد ، اما ما در اینجا همه کارهای فیزیکی را انجام می دهیم.

مشابه به روزرسانی، می توانیم از پارامترهای موجود در اینجا برای پاک کردن مقادیر استفاده کنیم، اما هنوز کارهای دستی زیادی باقی می‌ماند
بدیهی است هر بار که یک ستون جدید ایجاد می کنیم، باید به این دستور برگردیم و مطمئن شویم که همانطور که می‌خواهیم عمل می‌کند.

پاک کردن یک رکورد

سورپرایز بزرگی وجود ندارد

 using (SqlConnection connection = new SqlConnection(connectionString)) { connection.Execute("DELETE FROM Event WHERE Id = 4"); } 

روش اجرا برای ما تبدیل به ” این جمله را اجرا کنید و از نتیجه نگران نباشید ” تبدیل می شود.

CQRS چطور؟

هنگام صحبت کردن در مورد Dapper بسیار مرسوم است که CQRS تبدیل به یک موضوع داغ شود.

از این گذشته، شاهد هستیم که خواندن داده در Dapper بسیار قدرتمند ، یک دست و راحت است. نوشتن حس دست و پا گیر بودن می‌دهد.

به همین دلیل ، خودم را به هنگام نوشتن با استفاده از ORM متفاوت (نگاشت رابطه به شی/ ORM) پیدا کردم، اما برای querying به Dapper چسبیده ام. این کار می کند ، اما ضروری نیست (همانطور که به زودی خواهیم دید!).

  • پسورد: www.mspsoft.com
زهره سلطانیان

نوشته‌های مرتبط

دیدگاه‌ها

*
*

این سایت از اکیسمت برای کاهش هرزنامه استفاده می کند. بیاموزید که چگونه اطلاعات دیدگاه های شما پردازش می‌شوند.