• 技术文章 >后端开发 >C#.Net教程

    在Core中使用MVC路由的配置

    Y2JY2J2017-05-05 13:33:55原创1155
    这篇文章主要介绍了ASP.NET Core中使用默认MVC路由的配置,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧

    ASP.NET Core里Route这块的改动不大,只是一些用法上有了调整,提供了一些更加简洁的语法。

    而对于自定义路由的支持当然也是没有问题的,这个功能应该是从MVC1.0版本就已经有这个功能。

    先看看ASP.NET Core里面实现默认MVC路由的配置方式

    通常情况下,在使用MVC项目的时候,默认的路由就足够了,就是常见的通过Controller和Action获取具体的方法的方式。

    从一个最基本的项目开始,执行以下步骤,就可以使得项目支持MVC路由

    1.创建一个空白的ASP.NET Core(Empty) Web项目

    2.打开project.json,在”dependencies”节点下增加如下依赖项目

    "Microsoft.AspNetCore.Mvc": "1.0.0"

    保存之后,项目会自动restore packages到本地

    3.加入默认MVC路由配置

    打开Startup.cs文件

    在ConfigureServices方法,加入如下代码

    services.AddMvc();

    这个扩展方法把Mvc的一些服务都注入到容器中

    在Configure方法,注释最后兜底的那个“hello world”语句,这个语句的作用是不管什么请求都它来负责。

    然后在Configure方法加入如下代码

    app.UseMvcWithDefaultRoute();

    这个扩展方法实际上使用了一个Middleware,默认的Url template跟之前MVC版本的一致,上述代码等同于以下效果

    app.UseMvc(routes =>
       {
        routes.MapRoute(
         name: "Default",
         template: "{controller}/{action}/{id?}",
         defaults: new {controller = "Home", action = "Index"}
        );
       });

    最终的Startup.cs代码如下

    public class Startup
     {
      public void ConfigureServices(IServiceCollection services)
      {
       services.AddMvc();
      }
    
      // This method gets called by the runtime. Use this method to configure the HTTP request pipeline.
      public void Configure(IApplicationBuilder app, IHostingEnvironment env, ILoggerFactory loggerFactory)
      {
       loggerFactory.AddConsole();
    
       if (env.IsDevelopment())
       {
        app.UseDeveloperExceptionPage();
       }
    
       //app.Run(async (context) =>
       //{
       // await context.Response.WriteAsync("Hello World!");
       //});
       app.UseMvcWithDefaultRoute();
      }
     }

    4.到此配置已经完成,但是运行站点直接显示404,没显示Hello world说明已经生效了,只是Empty的项目没有Controller,那么定义一个Controller吧。

    手动在项目根目录创建Controllers目录,然后新建一个Controller,名字为HomeController,然后直接运行网站(应该刷新一下就可以了)。

    站点继续提示错误,但不是404了,是提示找不到Index这个View。

    php入门到就业线上直播课:进入学习

    继续在项目根目录创建Views目录,然后在Views目录下新建一个Home目录,在Home目录新建一个Index.cshtml,填写一些内容,再次刷新就可以了。

    当然这是最基本的配置,比如要进一步支持在cshtml里面实现智能感知,支持静态文件路由等还得加入更多的依赖和配置。

    【相关推荐】

    1. ASP免费视频教程

    2. ASP教程

    3. 李炎恢ASP基础视频教程

    以上就是在Core中使用MVC路由的配置的详细内容,更多请关注php中文网其它相关文章!

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。

    前端(VUE)零基础到就业课程:点击学习

    清晰的学习路线+老师随时辅导答疑

    自己动手写 PHP MVC 框架:点击学习

    快速了解MVC架构、了解框架底层运行原理

    专题推荐:mvc 路由配置
    上一篇:MVC页面重定向的ASP代码讲解 下一篇:自己动手写 PHP MVC 框架(40节精讲/巨细/新人进阶必看)

    相关文章推荐

    • ❤️‍🔥共22门课程,总价3725元,会员免费学• ❤️‍🔥接口自动化测试不想写代码?• c语言本身有没有输入输出语句• c语言中源文件编译后生成什么文件• c语言中的标识符是由什么组成• c语言中关键字有多少个• c语言中case是什么意思
    1/1

    PHP中文网