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
相关文章:
如何获取PHP WAP自助建站系统源码?
建站主机选哪家性价比最高?
威客平台建站流程解析:高效搭建教程与设计优化方案
高端建站如何打造兼具美学与转化的品牌官网?
如何快速完成中国万网建站详细流程?
如何用y主机助手快速搭建网站?
建站之星后台管理系统如何操作?
高性价比服务器租赁——企业级配置与24小时运维服务
开封网站制作公司,网络用语开封是什么意思?
专业网站制作服务公司,有哪些网站可以免费发布招聘信息?
广州网站制作的公司,现在专门做网站的公司有没有哪几家是比较好的,性价比高,模板也多的?
详解ASP.NET 生成二维码实例(采用ThoughtWorks.QRCode和QrCode.Net两种方式)
实现虚拟支付需哪些建站技术支撑?
非常酷的网站设计制作软件,酷培ai教育官方网站?
如何快速搭建响应式可视化网站?
自助网站制作软件,个人如何自助建网站?
香港服务器WordPress建站指南:SEO优化与高效部署策略
如何在IIS管理器中快速创建并配置网站?
TestNG的testng.xml配置文件怎么写
建站一年半SEO优化实战指南:核心词挖掘与长尾流量提升策略
如何通过VPS建站无需域名直接访问?
如何用腾讯建站主机快速创建免费网站?
专业制作网站的公司哪家好,建立一个公司网站的费用.有哪些部分,分别要多少钱?
建站之星安全性能如何?防护体系能否抵御黑客入侵?
如何在Golang中引入测试模块_Golang测试包导入与使用实践
北京的网站制作公司有哪些,哪个视频网站最好?
小型网站制作HTML,*游戏网站怎么搭建?
微信小程序 input输入框控件详解及实例(多种示例)
网站制作培训多少钱一个月,网站优化seo培训课程有哪些?
实例解析Array和String方法
宁波自助建站系统如何快速打造专业企业网站?
JS中使用new Date(str)创建时间对象不兼容firefox和ie的解决方法(两种)
头像制作网站在线观看,除了站酷,还有哪些比较好的设计网站?
定制建站如何定义?其核心优势是什么?
如何配置FTP站点权限与安全设置?
简历在线制作网站免费,免费下载个人简历的网站是哪些?
C++如何使用std::optional?(处理可选值)
简易网站制作视频教程,使用记事本编写一个简单的网页html文件?
如何在云指建站中生成FTP站点?
如何用免费手机建站系统零基础打造专业网站?
如何通过虚拟主机快速搭建个人网站?
如何在建站主机中优化服务器配置?
如何快速搭建支持数据库操作的智能建站平台?
免费公司网站制作软件,如何申请免费主页空间做自己的网站?
php8.4新语法match怎么用_php8.4match表达式替代switch【方法】
宿州网站制作公司兴策,安徽省低保查询网站?
教程网站设计制作软件,怎么创建自己的一个网站?
如何快速搭建二级域名独立网站?
建站之星展会模版如何一键下载生成?
广州网站建站公司选择指南:建站流程与SEO优化关键词解析
*请认真填写需求信息,我们会在24小时内与您取得联系。