يوضح هذا المستودع تنفيذ منصة التدوين البسيطة باستخدام ASP.NET Core مع التركيز على CQRS (الفصل بين مسؤولية استعلام الأوامر) وأنماط الوسائط. يتضمن التطبيق عمليات CRUD الأساسية للوظائف والفئات ، والالتزام بنهج الهندسة المعمارية النظيفة.
يتم استخدام نمط CQRS لفصل عمليات القراءة والكتابة ، مما يعزز قابلية التوسع وقابلية التقييم للتطبيق. يتم استخدام الاستعلامات للتعامل مع عمليات القراءة ، في حين أن الأوامر تتعامل مع عمليات الكتابة.
يتم استخدام MediaTr لفصل طبقات التطبيق عن طريق تنفيذ نمط الوسيط. هذا يضمن أن تتم معالجة الطلبات والإخطارات من خلال وسيط مركزي ، مما يعزز الاقتران الفضفاض والالتزام بمبدأ المسؤولية الفردية.
يتم استخدام Core Core Core كصاحب ORM (MAPPER الكائنات) لعمليات قاعدة البيانات. تم تكوين السياق لاستخدام SQL Server مع خيارات لتضمين الكيانات ذات الصلة عند الحاجة.
تم دمج Automapper للتعامل مع رسم الخرائط للكائن ، وتبسيط التحول بين نماذج المجال ونماذج العرض.
يحتوي على الكيانات الأساسية والواجهات ، بما في ذلك:
Post ، CategoryIAsyncRepository ، IPostRepositoryيحتوي على منطق العمل ، بما في ذلك:
CreatePostCommand - يحدد البيانات والمنطق المطلوب لإنشاء منشور جديد.GetPostsListQuery - يحدد البيانات والمنطق المطلوب لاسترداد قائمة المنشورات.يحتوي على تنفيذ نمط المستودع باستخدام Contity Framework Core ، بما في ذلك:
PostDb .IAsyncRepository و IPostRepository .نقطة دخول التطبيق ، تحتوي على وحدات تحكم وإعداد البرنامج الرئيسي. يقوم بتكوين الخدمات والوسيط والتوجيه.
يتم استخدام FluentValidation لضمان سلامة البيانات ومنطق التحقق من الصحة للأوامر.