ASP.NETCore-中间件Middleware_编写中间件_NET5

1、编写中间件

①方式一(中间件写在Startup.cs中)

复制代码
public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
{
  app.Use(async (context, next) =>
  {
    // TO DO
    await next();
  });
} 
复制代码

②方式二(中间件写在独立文件中)

  中间件写法:

复制代码
 public class TestMiddleware
    {
        private readonly RequestDelegate _next;

        public TestMiddleware(RequestDelegate next)
        {
            _next = next;
        }

        public Task Invoke(HttpContext httpContext)
        {
            // TO DO
            return _next(httpContext);
        }
    }
复制代码

  注册到IApplicationBuilder:

复制代码
    public static class TestMiddlewareExtensions
    {
        public static IApplicationBuilder UseTestMiddleware(this IApplicationBuilder builder)
        {
            return builder.UseMiddleware<TestMiddleware>();
        }
    }
复制代码

  在Startup中使用:

  // Startup.cs
  public void Configure(IApplicationBuilder app, IHostingEnvironment env)
  {
      app.UseTestMiddleware();
  }

 

补充:NetCore的学习地址https://docs.microsoft.com/zh-cn/aspnet/core/?view=aspnetcore-6.0

posted @   ꧁执笔小白꧂  阅读(272)  评论(0编辑  收藏  举报
编辑推荐:
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· 一文读懂知识蒸馏
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
历史上的今天:
2021-01-27 网络服务器技术Apache与Nginx,IIS、Kong、mono、Kestrel、Tomcat的不同
点击右上角即可分享
微信分享提示