معايير الـ .NET Backend
القاعدة عندنا أن “الـ linter هو المعيار”. كل repo يشحن أربعة ملفات config: global.json وDirectory.Build.props وDirectory.Packages.props و.editorconfig — ومنها تأتي كل القواعد المفروضة في الـ CI. الـ Nullable مفعّل، والـ warnings تكسر الـ build، والـ AnalysisLevel مثبّت على إصدار الـ TFM لا على latest. الشكل الافتراضي للخدمة: FastEndpoints vertical slices — مجلّد واحد لكل use case، بلا MVC controllers وبلا MediatR وبلا service layer وسيط. الأخطاء تخرج بشكل واحد ولا يصل نص الـ exception إلى الـ client أبداً. الـ migrations لا تُعدَّل بعد تطبيقها، وترتيبها مفروض عبر فحص في الـ PR pipeline. الاختبارات: xUnit v3 مع WebApplicationFactory.
flowchart LR Ep["Api — Endpoints/<Feature>/<UseCase><br/>endpoint · request · validator · query|command"] --> Dom["Domain<br/>pure — no EF, no web framework"] Ep --> Inf["Infrastructure<br/>EF Core · integrations"] Inf --> Dom
للتفاصيل الكاملة والأمثلة انظر النسخة الإنجليزية: .NET Backend Standards.