没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论



















ASP.NET Core Razor 页面路由详解页面路由详解
主要介绍了ASP.NET Core Razor 页面路由详解,小编觉得挺不错的,现在分享给大家,也给大家做个参考。
一起跟随小编过来看看吧
在服务器端 Web 应用程序框架中,其中非常重要的设计是开发人员如何将URL与服务器上的资源进行匹配,以便正确的处理
请求。最简单的方法是将 URL 映射到磁盘上的物理文件,在 Razor 页面框架中,ASP.NET团队就是这样实现的。
关于 Razor 页面框架如何将 URL 与文件相匹配,有一些规则您必须了解,以及如何根据需要自定义规则改变输出的结果。如
果您将 Razor 页面与 Web Form 框架进行比较,您还需要了解取代的 Ur l参数以及在URL中传递数据的机制。
规则一,Razor 页面需要一个根目录。默认情况下,该根目录是 Pages,位于Web应用程序项目的根目录中。您可以
在Startup类的ConfigureServices方法中配置其它文件夹作为根目录。以下是将根目录更改为位于应用程序 “Content” 文件夹:
public void ConfigureServices(IServiceCollection services)
{
services
.AddMvc().
AddRazorPagesOptions(options => {
options.RootDirectory = "/Content";
});
}
规则二,URL映射到Razor页面,URL不包含文件扩展名。
规则三,“Index.cshtml”是一个默认文档,这意味着如果
URL 映射文件映射文件
www.domain.com /Pages/Index.cshtml
www.domain.com/index /Pages/Index.cshtml
www.domain.com/index /Pages/Index.cshtml
www.domain.com/account /Pages/account.cshtml 或者 /Pages/account/index.cshtml
在最后一个例子中,URL映射到两个不同的文件 - 根目录中的“account.cshtml”、“account”文件夹中的“index.cshtml”。Razor
页面框架无法识别要选择哪一个文件,因此如果您在应用程序中实际同时拥有这两个文件,那么如果您尝试浏览
www.domain.com/account,会抛出如下异常:
AmbiguousActionException: Multiple actions matched. The following actions matched route data and had all constraints
satisfied:
Page: /account/Index
Page: /account
URL传递参数传递参数
就像大多数其它框架一样,参数可以作为查询字符串在 URL 中传递,例如:www.domain.com/product?id=1;或者,您可以将其作
为路由参数传递,因此上述示例将变为www.domain.com/product/1。URL的一部分必须映射到参数名称,在页面的路由模板来实现
的,@page指令的一部分:
@page "{id}"
该模板告诉框架将页面名称之后URL的第一段作为“id”的路由参数。您可以通过多种方式访问路由参数的值。第一个是使
用RouteData字典:
@page "{id}"
{
var productId = RouteData.Values["id"];
}
或者,您可以向该页面的OnGet()方法添加与路由参数相同名称的参数,并将其值分配给公共属性:
@page "{id}"
@{
@functions{
public int Id { get; set; }
public void OnGet(int id)
{
Id = id;
}
资源评论


weixin_38738511
- 粉丝: 3
- 资源: 898
上传资源 快速赚钱
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助


最新资源
- 02.数二卷2.pdf02.数二卷2.pdf02.数二卷2.pdf
- EXP_3.LST
- 面向对象程序设计之抽奖
- wubi (Ubuntu)
- Kylin-Server-V10-SP3-General-Release-2212-X86-64.7z.009
- Kylin-Server-V10-SP3-General-Release-2212-X86-64.7z.008
- 南方电网知识.docx
- Kylin-Server-V10-SP3-General-Release-2212-X86-64.7z.007
- Kylin-Server-V10-SP3-General-Release-2212-X86-64.7z.006
- 初始指针
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈



安全验证
文档复制为VIP权益,开通VIP直接复制
