سلام
امیدوارم حالتون خوب باشه.
مدتی پیش چون فکر میکردم لازمه دید جامع تری نسبت به EF Core داشته باشم تصمیم گرفتم یه کتاب کاربردی در این زمینه بخونم. بررسی ها منو به این کتاب رسوند.
Practical Entity Framework Core 6, Database Access for Enterprise Applications, Second Edition
در کتاب استفاده از EF Core در کنار SQL Server توضیح داده شده و هدف انجام کار مورد نیاز بوده و تمرکز خاصی برای انجام اون توسط Data Annotation و یا Fluent API نشده. کتاب مملو از مثال های مفصل هست و هر فصل بین 2 تا 4 مثال عملی برای یادگیری بهتر دارد.
محتوا: نصب و راه اندازی ابزار های مورد نیاز، دیتابیس های مورد نیاز برای آموزش، توضیحاتی در مورد روشهای Code First و Database First
مناسب برای: افرادی که سابقه کمی (یکی دو سال) با خانواده EF دارند. برای افراد با سابقه توصیه نمیشه.
محتوا: به سمت ایجاد یک ساختار جامع برای مدیریت لایه دیتای پروژه رفته. این بخش شامل ایجاد و انتقال Table، Function، SP، View و اطلاعات به وسیله Migration به دیتابیس هست و روش استفاده هر کدام از Function، SP، View در برنامه توضیح داده شده. در این بخش همچنین نکات مفیدی در کار با IEnumerable و IQuerable ها بیان شده. نویسنده کاملا به جزئیات توجه کرده و در جاهایی برای درک بهتر شما از Profiler برای نمایش نتایج کوئری شما استفاده کرده.
مناسب برای: اگر در EF کم سابقه هستید ولی قصد دارید در آینده از اون استفاده کنید بسیار توصیه میکنم این فصل رو دقیق بخونید و مثال هاش رو انجام بدید. برای افراد با سابقه در این زمینه تورق این فصل خالی از لطف نیست.
محتوا: این فصل مباحث فنی تر برای واکشی دیتا و Map کردن اون رو داره. همچنین دیتا رو چطور بصورت توکار در SQL رمزگذاری کنید و سمت EF مورد استفاده قرار بدید (اگه خواستید از این تکنیک استفاده کنید حتما چالش های محیط عملیاتی رو در نظر بگیرید). نوشتن Unit Test و Integration Test و همچنین انجام عملیات دیتابیس به صورت Async (که به نظرم بسیار مهمه) از دیگر مسائل مطرح شده توی این فصله. توی این فصل یه مبحثی پیرامون Repository and Unit of Work Patterns باز شده که من رو اقناع نکرد و سوالات من رو بی جواب گذاشت.
مناسب برای: مطالعه این فصل رو به همه توصیه میکنم ولی اگه سابقه کمی دارید حتما مثال ها رو هم انجام بدید
محتوا: یه سری نکات تکمیلی مانند Interceptor ها و کاربردهاشون، SplitQuery ، ساختار TPT، یه سری Data Annotation Attribute جدید، استفاده از قابلیت FullText Search در EF Coreرو بیان کرده و هر کدوم رو با مثال های عملی همراه کرده. برای مثال فکر کنید اگه کوئری هاتون که EF روی دیتابیس میزنه کند شدند از کجا میخواید بفهمید؟ راه حلش یه Interceptor ساده است که توی این فصل آموزش داده شده.
مناسب برای: مطالعه این فصل رو به همه توصیه میکنم ولی باز هم اگه سابقه کمی دارید حتما مثال ها رو هم انجام بدید.
در پایان اگه به محتوای این کتاب به خوبی مسلط باشید میتونید لایه دیتای پروژه های نسبتا بزرگ به خوبی مدیریت کنید. قطعا ده ها نکته ریز و درشت دیگه وجود داره که میتونید دانش خودتون رو باهاش بهبود ببخشید. مثل بقیه کتاب های دیگه این کتاب و محتواش وحی منزل نیست و کاملا از یک پروژه تا پروژه دیگه میتونه درست یا غلط باشه.
در پایان اگه در مورد این متن و یا این کتاب نکته ای داشتید که برای من یا بقیه دوستان مفید بود ممنون میشم به اشتراک بذارید. اگه کتاب مناسب تر و کاربردی تری در زمینه EF Core میشناسید ممنون میشم راهنمائیم کنید.