يعتزم هذا المشروع إنشاء هيكل أساسي لـ ASP.NET Core WebAPI لتنفيذ مهمة تنفيذ API التي تنفذ أنماط تنفيذ في Heroku 12Factor و Richardson's Microservices.io و OpenAPI مواصفات وأيضًا تنفيذ Microsoft وتوفير موازين التصميم. تم إنشاؤه حول إطار .NET 5 وهو مستعد للتشغيل على مكدس Docker إلى جانب أدوات مثل إدارة التكوين وتسجيل وتخزين التخزين المؤقت.
قم بتثبيت وتشغيل أحدث إصدار مستقر من هذا القالب ، فقط قم بتشغيل أوامر Flouding:
dotnet new install Xopz.Templates.Api
dotnet new apichassis --name MyApiفيما يلي قائمة بالأنماط التي تم تنفيذها بالفعل.
| نمط | وصف |
|---|---|
| هيكل API | هذا المشروع نفسه هو معالجة المرافق المقترحة في نمط هيكل الخدمات المجهرية في ريتشاردسون. تم اختيار نوع مشروع API Service معالجة مواضيع 12 Factor VI و VII و VIII. |
| مقاييس API | هذا المشروع ينفذ HealthCheck خارج المربع عبر app.UseHealthChecks() |
| إصدار API | هذا المشروع ينفذ إصدار عنوان URL لواجهة برمجة التطبيقات |
| Hateoas | في التقدم ، يقدم هذا المشروع بديلاً لطلب البيانات مع روابط كما هو مذكور في مواصفات ربط الويب وتوصي بها من قبل Microsoft. |
| OAS 3.0 | يتبع هذا المشروع الإصدار الثالث من مواصفات OpenAPI لوثائق API. |
| استراحة | يقوم واجهة برمجة التطبيقات بتنفيذ إرشادات راحة حول طلب المعالجة ، فهو يتبع مواصفات HTTP عند إرسال استجابة ويتبع أيضًا موازنة Microsoft |
يعتمد هذا القالب والتنفيذ على .NET 5 ، لذا فهو مطلوب أن يكون لديك .NET SDK أو لتشغيل هذا المشروع على صورة .NET Docker
ستكون الحلول الجليدية داخل مجلد source . يجب أن يكون كل حل قادرًا على فتحه على Visual Studio أو رمز لتحرير وتجميع وتصحيح الأخطاء. لبناء المشروع الحالي من سطر الأوامر ، استخدم الأمر follwing:
dotnet build ./source/ApiChassi/ApiChassi.slnيجب إثبات المشاريع بمجموعة أساسية من اختبار الوحدة وأنها مدرجة في القالب. يمكن تنفيذها أيضًا بمفردهم مع الأمر التالي:
dotnet test ./source/ApiChassi/ApiChassi.slnلإنشاء حزمة nuget نختار استخدام صور Docker. هناك نصوص محددة مسبقًا للمساعدة في إنشاء صورة Docker Tool المطلوبة وتعبئة Nuget كقالب. لصنع وبناء محليًا (حتى على Linux أو MacOS):
# EXECUTE THE FOLLOWING COMMANDS AT THE ROOT FOLDER
# CREATES A DOCKER IMAGE LOCALLY TO PACK THE SOURCE
./.environment/scripts/make_nuget.cmd
# CREATES THE NUPKG
./.environment/script/make_package.cmd بالنسبة للاختبارات المحلية ، من الممكن تثبيت ملف nupkg من المجلد. للقيام بذلك ، قم بتنفيذ الأمر التالي:
dotnet new --install ./Xopz.Templates.Api.0.0.1.nupkg
# CHECK INSTALLED TEMPLATES
dotnet new --list | grep XOPZ
# CREATE SOLUTION FROM TEMPLATE
dotnet new apichassis --name MyApiلإزالة القالب المثبت - من nuget.org أو محليًا - استخدم:
dotnet new --uninstall Xopz.Templates.Api