Mundane เป็นเฟรมเวิร์กเว็บ "No Magic" ที่มีน้ำหนักเบาสำหรับ. NET
แพ็คเกจนี้ช่วยให้แอปพลิเคชันทางโลกสามารถโฮสต์ด้วย ASP.NET
ดูเอกสารทางโลกสำหรับข้อมูลเพิ่มเติม
ติดตั้งแพ็คเกจ Mundane.hosting.aspnet NuGet จากนั้นใน App.net Startup Code 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 ที่มี Signature ValueTask<Response> Endpoint(Request request) ลายเซ็นจุดปลายทางอื่น ๆ ใด ๆ สามารถแปลงเป็น MundaneEndpoint ได้โดยเรียก MundaneEndpointFactory.Create() เช่น
MundaneEndpointFactory . Create ( ( ) => Response . Ok ( o => Write ( "Hello World!" ) ) ) ; เนื่องจากไม่มีข้อมูลการกำหนดเส้นทางใน ExecuteRequest() เวอร์ชันนี้คุณต้องจัดหาพจนานุกรม routeParameters ที่เหมาะสมสำหรับจุดสิ้นสุด เมื่อเรียกว่าเป็นส่วนหนึ่งของไปป์ไลน์ Mundane จะสร้างพจนานุกรมพารามิเตอร์ที่จับจาก URL เช่นเส้นทาง /my-endpoint/{id} เรียกด้วย /my-endpoint/123 , Mundane ผ่านพจนานุกรมใหม่ <String, String> {{"id routeParameters new Dictionary<string, string> { { "id", "123" } }
หากจุดสิ้นสุดไม่จำเป็นต้องใช้พารามิเตอร์เส้นทางให้ผ่านพจนานุกรมที่ว่างเปล่า: new Dictionary<string, string>(0); -