asp.net-mvc-routing相关内容

自定义 ASP.NET MVC 404 错误页面的路由

当有人输入 URL 时,我试图创建一个自定义的 HTTP 404 错误页面不会在 ASP.NET MVC 中调用有效的操作或控制器,而不是显示一般的“资源未找到"ASP.NET 错误. 我不想使用 web.config 来处理这个问题. 是否有任何路由魔法可以捕获任何无效的 URL? 更新:我尝试了给出的答案,但是我仍然收到丑陋的“找不到资源"消息. 另一个更新:好吧,显然 ..

ASP.NET MVC 模棱两可的动作方法

我有两个相互冲突的操作方法.基本上,我希望能够使用两个不同的路由到达同一个视图,要么通过项目的 ID,要么通过项目的名称及其父项(项目可以在不同的父项中具有相同的名称).搜索词可用于过滤列表. 例如... Items/{action}/ParentName/ItemName项目/{action}/1234-4321-1234-4321 这是我的操作方法(还有Remove 操作方法)... ..
发布时间:2021-11-29 08:48:20 C#/.NET

你如何在 ASP.NET MVC 中的 ~/Views 文件夹下请求静态 .html 文件?

我希望能够请求位于 ~/Views 文件夹中的静态 .html 文件.根据文档,路由系统会在评估应用程序的路由之前检查 URL 是否与磁盘文件匹配. 但是当我请求文件时,会出现 404 错误. 我的文件位于 ~/Views 文件夹中.网址为:http://[localhost]/Views/HtmlPage1.html 我错过了什么? 解决方案 我希望能够请求位于“~ ..
发布时间:2021-11-29 08:48:11 其他开发

用于捕获所有 *.aspx 请求的 ASP.Net MVC 路由

这必须之前已经问过,但在阅读此处,这里、这里和 重定向AspxPermanentRoute 我们构建了一个自定义的 RouteBase 子类,用于检测 URL 何时以 .aspx 结尾并路由到我们的 SystemController 以设置 301 重定向.它要求您传入 URL 映射(要匹配的 URL)以路由值(用于生成 MVC URL). 公共类 RedirectAspxPermane ..
发布时间:2021-11-29 08:46:31 C#/.NET

如何配置 ASP.NET MVC 路由以隐藏“主页"上的控制器名称?页?

从这个问题开始: 使用默认控制器的 ASP.NET MVC 路由 我有一个类似的要求,我的最终用户不希望在其应用程序的着陆或“主页"的 url 中看到控制器名称. 我有一个名为 DeviceController 的控制器,我想将它作为“主页"控制器.这个控制器有许多动作,我想使用如下所示的 URL: http://example.com -> 调用 Index()http:// ..

为什么在asp.net mvc 中先映射特殊路由,然后再映射普通路由?

来自 www: ...路由引擎将采用与提供的 URL 匹配的第一条路由,并尝试使用该路由中的路由值.因此,应首先将不太常见或更专业的路线添加到表格中,而更一般的路线应稍后添加...... 为什么要先绘制专业路线?有人可以给我一个例子,我可以在哪里看到“先映射公共路线"的失败? 解决方案 路由引擎将采用与提供的 URL 匹配的第一条路由,并尝试使用该路由中的路由值. 发 ..

MVC 自定义路由中的多个级别

我正在尝试构建自己的小cms.我创建了一个由静态、评论、文章、新闻继承的抽象 pageBase 类.每个都有自己的控制器方法. 我的问题是我需要允许管理员定义他自己的自定义路径级别.例如.news\local\mynewdog 或 Articles\events\conventions\mycon.所以我想要一种传递字符串数组并设置自定义路由的方法. 解决方案 您可以使用自定义 Ro ..
发布时间:2021-11-29 08:21:36 C#/.NET

路由和 url 中的 ASP.NET MVC 5 文化

我已经翻译了我的 mvc 网站,效果很好.如果我选择另一种语言(荷兰语或英语),内容就会被翻译.这是有效的,因为我在会话中设置了文化. 现在我想在 url 中显示选定的文化(=文化).如果是默认语言,则不应在 url 中显示,只有在不是默认语言时,才应在 url 中显示. 例如: 对于默认文化(荷兰语): site.com/foosite.com/foo/barsite.com ..
发布时间:2021-11-29 08:20:49 C#/.NET

是否可以基于子域创建 ASP.NET MVC 路由?

是否有可能使用子域信息来确定其路由的 ASP.NET MVC 路由?例如: user1.domain.com 转到一个地方 user2.domain.com 转到另一个? 或者,我可以使用 username 参数使这两个控制器/操作都转到同一个控制器/操作吗? 解决方案 您可以通过创建新路由并将其添加到 global.asax 中 RegisterRoutes 中的路由集合来 ..
发布时间:2021-11-29 08:20:15 其他开发

如何在 ASP.NET Core 中使用区域

如何在 ASP.NET Core 中使用 Area? 我有一个需要管理部分的应用.此部分要求将其视图放置在该区域中.所有以 Admin/ 开头的请求都需要重定向到该区域. 解决方案 为了在 ASP.NET Core 应用程序中包含一个区域,首先我们需要在 Startup.cs 文件(最好放在任何非区域路由之前): 在 Startup.cs/Configure 方法中: app ..

MVC 2 区域注册路由顺序

我注意到在 MVC 2 Preview 2 中,AreaRegistration 以任意顺序加载每个区域的路由.有什么好方法可以先得到一个吗? 例如,我有两个区域 - “站点"和“管理员".两者都有一个“博客"控制器. 我想要以下内容: /admin/-->转到管理员的博客控制器/-->转到站点的博客控制器. 问题是它首先加载站点的路由,所以它匹配 {controller}/{ac ..
发布时间:2021-11-26 10:07:41 其他开发

使用路由与查询字符串参数是错误的吗?

我有一个带有两个操作的 Web API 控制器.一个操作返回数据库中所有实体的列表.第二个操作采用查询字符串参数并过滤实体. 搜索操作连接到使用查询字符串参数.它可以工作,但我们遇到了文档工具无法工作的问题,因为操作签名是相同的(文档工具不考虑查询字符串). 将搜索参数从查询字符串移动到路由中的属性是错误的吗?这是一种可以接受的方法吗?会不会导致我没有想到的问题? 目前,这是我使 ..
发布时间:2021-11-24 10:29:53 C#