فریم ورک(AUA) Asp.Net Unique Architecture
AUA یک فریم ورک ساده و سبک برای تولید پروژه های با هر مقیاس (کوچک و بزرگ) می باشد. فریم ورک Asp.Net Unique Architecture به دلیل شفافیت در ساختار، قابل استفاده در تمام معماری های (Micro service، CQRS,، ... (می باشد. همچنین فریم ورک AUA پر از الگو های طراحی مختلف بوده که یک منبع بسیار خوب برای معماران نرم افزار و توسعه دهنده ها می باشد.
• طراحی دامنه محور (DDD) Domain Driven Design
• EF 6 و EF Core 3.0,3.1
• امکان توسعه ی نرم افزار به شکلی ساده و سریع
• مبتنی بر اصول SOLID
• طراحی پیمانه ای یا ماژولار
• معماری لایه بندی شده
فریم ورک AUA در نسخه های:
• Asp.Net MVC (.net framework and ef6)
• Asp.Net MVC Core 3.0,3.1
• Asp.Net Web API Core 3.0,3.1
ساختار کلی فریم ورک Asp.Net Unique Architecture (AUA)
در این قسمت با لایه های مختلف فریم ورک AUA آشنا می شویم.
نام لایه مورد استفاده
Common Layer این لایه شامل موارد مشترکی است که در لایه های دیگر استفاده می شوند. مانند
Enums, Consts, Extensions,…،Tools
Data Layer این لایه شامل موارد ارتباط با منبع داده می باشد
Entity Framework Context, Db Extensions, Search Filters, Unit Of Work Pattern, Configuration Tools, Dapper Context
Domain Entity Layer این لایه شامل موجودیت های و کانفیگ آنها می باشد.
Models Layer این لایه شامل DTO ها ، View Model ها و کانفیگ مپینگ می باشد.
EntitiesDto, ReportModels, View Models ,…
Service Infrastructure Layer زیر ساخت کلی Services و Repository در این لایه نوشته شده و اماده می باشد.
Service Layer لایه سرویس شامل تمام سرویس ها ی بیزینس پروژه شما می باشد.
BaseServices, BusinessService, EntitiesService, ReportService, …
WebApi or Ui Mvc Layer لایه واسط کاربری که می تواند با General MVC- WebApi- GraphQl- Grapc
نوشته شود.
Test Layer این لایه جهت نوشتن Unit Test ها طراحی شده است
External web service Layer این لایه جهت فراخوانی سرویس های خارجی می باشد.