任务30:RoutingMiddleware介绍以及MVC引入

 

前面讲到app.Map的方式,它也可以实现路由

当我们的url是task的时候,就会执行里面的context的输出内容

app.Map("/task", taskApp=>{
   taskApp.Run(async context=>{
       await context.Response.WriteAsync("this is a task....");
   });
});

 taskapp,这里的applicationbuilder不是同一个,它是属于另外一套环境

一般不是比较复杂应用我们不会使用,并且它和路由的实现机制也不一样

介绍一般使用路由的方式

首先把middleware加进来。这里加的是依赖注入的配置

 public void ConfigureServices(IServiceCollection services)
{
      services.AddRouting();
}

 

 

前提条件必须引入命名空间

using Microsoft.AspNetCore.Routing;

 

app.UseRouter 它给我们一个RouterBuilder。

builder里面mapGet和mapPost等方法

任务30:RoutingMiddleware介绍以及MVC引入

 app.UseRouter(builder=>builder.MapGet("action",async context=>{
     await context.Response.WriteAsync("this is a action");
 }));

 

执行dotnet run

任务30:RoutingMiddleware介绍以及MVC引入

http://localhost:5000/action

任务30:RoutingMiddleware介绍以及MVC引入

 

 

另外一种方式,直接传一个router给它

任务30:RoutingMiddleware介绍以及MVC引入

 

clear清空窗口

任务30:RoutingMiddleware介绍以及MVC引入

 

执行:dotnet run

同样的运行结果

http://localhost:5000/action

任务30:RoutingMiddleware介绍以及MVC引入

 

 

route的流程

任务30:RoutingMiddleware介绍以及MVC引入

core的源码

任务30:RoutingMiddleware介绍以及MVC引入

MVC中添加route

mvcrouterHandler

任务30:RoutingMiddleware介绍以及MVC引入

 

相关文章:

  • 2021-10-11
  • 2021-08-25
  • 2022-12-23
  • 2021-07-06
  • 2021-08-15
  • 2021-08-11
  • 2021-10-06
  • 2022-12-23
猜你喜欢
  • 2021-06-19
  • 2022-12-23
  • 2022-12-23
  • 2021-11-15
  • 2021-09-12
  • 2021-09-16
  • 2021-05-06
相关资源
相似解决方案