جلسه یازدهم دوره Modern Data Layer به تدریس مهندس علیرضا ارومند با موفقیت برگزار گردید.
از جمله مباحثی که در این جلسه مطرح شد عبارتند از:
تا اینجای کار به طور کامل با ویژگیهای Entity Framework core آشنا شدیم و توانستیم با این ORM لایه DAL خود را به طور کامل ایجاد کنیم.
اما در مورد کار با ORMها مشکلاتی وجود دارد. بعضا با آخرین نسخه Db Engine هماهنگ نیستند و کمی از آنها عقبتر هستند. دوم در کنار امکانات فوق العاده ای که این ابزارها میدهند کمی سربار برای ما دارند که این سربار در بعضی موارد میتواند تاثیر بسیاری روی کار کردن سیستم داشته باشد. و سوم اینکه هر ابزاری که ما استفاده میکنیم محدودیتهایی را برای ما به همراه دارد.
اما در نهایت چه کاری باید انجام دهیم؟ از ORM استفاده کینم یا خیر؟! سربارهای ORM را بپذیریم یا مشکلات کار کردن عادی؟
جواب به این سوال ساده است. ما باید یک لایه کار با Data به صورت کاملا هیبرید داشته باشیم. تا جایی که ایرادات کار کردن باORM ها در کارکردن نرمافزار ما نقص ایجاد نمیکند از مزایای فوقالعاده این ابزارها بهرهمند میشویم هر جایی که این نقایص به کار ما لطمه وارد میکرد به راحتی از ابزارهای دیگر استفاده میکنیم. اما این تغییرات نباید در لایههای دیگر احساس شود.
در این جلسه با ابزار DAPPER به عنوان یک میکرو ORM بسیار قوی است به طور کامل آشنا شدیم. انواع روشهای اجرای دستورات روی دیتابیس را به کمک Dapper بررسی کردیم و با سه روش مختلف مدیریت نتایج به دست آمده از اجرای کوئریها توسط Dapper آشنا شدیم.
در ادامه دیدیم که چگونه میتوانیم پارامترها را به سه روش:
- Anonymous
- Dynaic
- List
برای دستورات خودمان ارسال کنیم و با نحوه اجرایSPها به کمک Dapper به طور کامل آشنا شدیم.
در قسمت انتهایی کلاس لایه مدیریت لایههای خود را که در جلسات قبل توسعه داده بودیم تکمیلتر کردیم و در دستورات واکشی اطلاعات از Dapper استفاده کردیم و عملا یک لایه مدیریت دیتای هیبرید ایجاد کردیم.
جهت کسب اطلاعات بیشتر میتوانید به دوره بسیار کاربردی Modern Data Layer مراجعه کنید.