الدنيوي هو إطار ويب "لا سحري" خفيف الوزن لـ .NET.
تتيح هذه الحزمة استضافة تطبيق دنيوي مع ASP.NET.
انظر الوثائق الدنيوية لمزيد من المعلومات.
قم بتثبيت حزمة mundane.hosting.aspnet nuget ، ثم في رمز بدء التشغيل ASP.NET الخاص بك app.UseMundane(); تمرير تكوين التوجيه والتبعيات.
public void Configure ( IApplicationBuilder app , IWebHostEnvironment env )
{
var dependencies = new Dependencies (
new Dependency < Configuration > ( new Configuration ( env ) ) ,
new Dependency < DataRepository > ( request => new DataRepositorySqlServer (
request . Dependency < Configuration > ( ) . ConnectionString ) ) ) ;
var routing = new Routing (
routeConfiguration =>
{
routeConfiguration . Get ( "/" , HomeController . HomePage ) ;
routeConfiguration . Get ( "/data/{id}" , DataController . GetData ) ;
routeConfiguration . Post ( "/data/{id}" , DataController . UpdateData ) ;
} ) ;
app . UseMundane ( dependencies , routing ) ;
} يمكن تنفيذ نقاط النهاية في جزء مختلف من خط أنابيب ASP.NET عن طريق استدعاء MundaneMiddleware.ExecuteRequest() . على سبيل المثال ، قد ترغب في القيام بمعالجة أخطاء مخصصة مع الاستمرار في استخدام المحرك الدنيوي.
تمرير HttpContext الحالي وسوف يقوم تكوين التوجيه والتبعيات بتنفيذ نقطة النهاية التي تطابق الطلب.
public static async ValueTask ExecuteRequest (
HttpContext context ,
DependencyFinder dependencyFinder ,
Routing routing )من الممكن أيضًا تنفيذ نقطة نهاية specifc مع:
public static async ValueTask ExecuteRequest (
HttpContext context ,
DependencyFinder dependencyFinder ,
MundaneEndpoint endpoint ,
Dictionary < string , string > routeParameters ) يجب أن تكون نقطة النهاية عبارة عن MundaneEndpoint تحتوي على ValueTask<Response> Endpoint(Request request) . يمكن تحويل أي من توقيعات نقطة النهاية الدنيوية الأخرى إلى MundaneEndpoint من خلال استدعاء MundaneEndpointFactory.Create() على سبيل المثال
MundaneEndpointFactory . Create ( ( ) => Response . Ok ( o => Write ( "Hello World!" ) ) ) ; نظرًا لعدم وجود معلومات توجيه في هذا الإصدار من ExecuteRequest() ، يجب عليك أيضًا توفير قاموس routeParameters المناسب لنقطة النهاية. عندما يتم استدعاؤه كجزء من خط الأنابيب ، يقوم الدنيوي بإنشاء قاموس من المعلمات التي تم التقاطها من عنوان URL ، على سبيل المثال للطريق /my-endpoint/{id} ، يسمى مع /my-endpoint/123 ، يمرد الدنيوي new Dictionary<string, string> { { "id", "123" } } routeParameters .
إذا كانت نقطة النهاية لا تتطلب معلمات الطريق ، فالقاموس الفارغ: new Dictionary<string, string>(0); .