全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

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。

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

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

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。


# asp.net  # mvc  # 默认路由  # 路由  # 路由配置  # ASP.NET Core中MVC模式实现路由二  # ASP.NET Core中MVC模式实现路由一  # ASP.NET Core MVC学习教程之路由(Routing)  # 详解ASP.NET Core MVC 源码学习:Routing 路由  # ASP.NET Core MVC 配置全局路由前缀  # ASP.NET Core MVC路由(Routing)的用法  # 就可以  # 新建一个  # 这是  # 找不到  # 是从  # 自定义  # 还得  # 这块  # 到此  # 创建一个  # 它来  # 大家多多  # 情况下  # 使用了  # 目录下  # 要进一步  # 足够了  # ConfigureServices  # brush  # class 


相关文章: 如何生成腾讯云建站专用兑换码?  微信h5制作网站有哪些,免费微信H5页面制作工具?  西安市网站制作公司,哪个相亲网站比较好?西安比较好的相亲网站?  ,在苏州找工作,上哪个网站比较好?  网站制作价目表怎么做,珍爱网婚介费用多少?  制作网页的网站有哪些,电脑上怎么做网页?  建站之星安装路径如何正确选择及配置?  如何在万网主机上快速搭建网站?  寿县云建站:智能SEO优化与多行业模板快速上线指南  金*站制作公司有哪些,金华教育集团官网?  电影网站制作价格表,那些提供免费电影的网站,他们是怎么盈利的?  建站之星后台密码遗忘?如何快速找回?  头像制作网站在线制作软件,dw网页背景图像怎么设置?  定制建站流程步骤详解:一站式方案设计与开发指南  招商网站制作流程,网站招商广告语?  浅谈Javascript中的Label语句  常州企业网站制作公司,全国继续教育网怎么登录?  网站制作的方法有哪些,如何将自己制作的网站发布到网上?  IOS倒计时设置UIButton标题title的抖动问题  免费制作统计图的网站有哪些,如何看待现如今年轻人买房难的情况?  广州网站建站公司选择指南:建站流程与SEO优化关键词解析  如何通过云梦建站系统实现SEO快速优化?  已有域名和空间如何搭建网站?  武汉网站设计制作公司,武汉有哪些比较大的同城网站或论坛,就是里面都是武汉人的?  广平建站公司哪家专业可靠?如何选择?  建站之星如何开启自定义404页面避免用户流失?  建站之星代理费用多少?最新价格详情介绍  jQuery 常见小例汇总  青浦网站制作公司有哪些,苹果官网发货地是哪里?  如何登录建站主机?访问步骤全解析  如何快速建站并高效导出源代码?  如何在万网ECS上快速搭建专属网站?  制作网站的过程怎么写,用凡科建站如何制作自己的网站?  如何快速搭建响应式可视化网站?  如何在云主机上快速搭建网站?  外贸公司网站制作哪家好,maersk船公司官网?  如何挑选优质建站一级代理提升网站排名?  如何批量查询域名的建站时间记录?  淘宝制作网站有哪些,淘宝网官网主页?  php json中文编码为null的解决办法  C++如何使用std::optional?(处理可选值)  宝塔Windows建站如何避免显示默认IIS页面?  如何高效利用200m空间完成建站?  如何在云主机快速搭建网站站点?  手机怎么制作网站教程步骤,手机怎么做自己的网页链接?  建站之星展会模版如何一键下载生成?  学校为何禁止电信移动建设网站?  如何快速配置高效服务器建站软件?  小自动建站系统:AI智能生成+拖拽模板,多端适配一键搭建  建站之星如何一键生成手机站? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。