ASP.NET Core3.x (3)

在前面第一篇文章中 ConfigureServices方法简单的介绍完了。下面来说说 Configure

参数 IApplicationBuilder 它实际上也是一个服务,通过依赖注入的方式将它注入进来。

注册的时候也是对应这个服务的接口,也就是 IApplicationBuilder 。那么Configure这个方法具体是怎么用呢。这个方法配置了针对这种Http请求它有这么一个管道它就是配置这个管道用的。在接收到浏览器Http请求的时候,它就会进入这个管道,从管道中进去,然后再出来将相应的数据或者文件什么的对象返回给浏览器。如果你的管道里面啥都莫得,那就啥都不会发生。应该就是这样一个过程。把放到管道里面能够出来Http请求的东西称为中间件

具体操作已表明在注释:

记得把id后面的?号带上代表id可为空,不然在执行过程中会因为找不到id而出现404。

public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
        {
            //判断是否是开发模式
            if (env.IsDevelopment())
            {
                //如果是,这个中间件作用:抛出错误信息到一个页面
                //开发模式下:插入管道的第一个中间件
                app.UseDeveloperExceptionPage();
            }
            //静态文件中间件(html、css、js)
            app.UseStaticFiles();

            //app.UseHttpsRedirection();

            //路由中间件:插入管道的第二个中间件(如果不是开发模式那么就是管道中的第一个中间件)
            app.UseRouting();

            /*
             * 端点:endpoints 端点就是进来的http请求的url的结尾那部分,这部分会被中间件进行处理
             * MVC:/Home/Index
             * Razor Pages:/SomePage
             * SignalR:/Hub/Chat
             */
             //通过lambda表达式配置端点中间件
            app.UseEndpoints(endpoints =>
            {
                //注册一个MVC路由模板(实际上可以注册多个):
                endpoints.MapControllerRoute(
                    name: "default",
                    pattern: "{controller=Department}/{action=Index}/{id?}");
            });
}
原文地址:https://www.cnblogs.com/hcyesdo/p/12834499.html