问题标签 [ignoreroute]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
372 浏览

asp.net-mvc-2 - 为什么这个 IgnoreRoute 调用匹配这些请求?

我有一个本地化 httphandler,它在我的 ASP.Net MVC2 Content 文件夹的上下文中运行(它正在做的一部分是编译 /Content/css 中的 .less 文件)。我对这组特定请求的默认路由如下所示:

(顺便说一句 - 我认为它不相关,但以防万一 - 如果请求不是来自传入的应用程序路径/虚拟目录,则 VirtualDirectoryConstraint 拒绝此路由上的匹配项)

使用此配置,调用http://server.net/VDirectory1/Content/css/LessCompiler.axd失败,因为没有 ContentController 类。一切都很好。

当我添加

该调用成功,但随后调用

失败。查看 Phil Haack 的 RouteDebugger 工具,这些调用与 Content IgnoreRoute 路由匹配:

因此不会分别路由到 LocalizationController 和 AuthorizationController。

显然,我误解了应该如何使用 IgnoreRoute 以及为什么那个特定的 IgnoreRoute 匹配这些请求。我错过了什么?

0 投票
1 回答
4468 浏览

asp.net-mvc - RouteCollection.Ignore 和 RouteCollection.IgnoreRoute 之间的区别?

RouteCollection.Ignore(url, constraints)和有什么区别RouteCollection.IgnoreRoute(url, constraints)

背景

新的 MVC 项目IgnoreRoute在 Global.asaxRegisterRoutes方法中包含此调用,以跳过路由到 .axd 位置的请求,这些位置在 ASP.NET 系统的其他地方处理。

我想为一个项目添加一个额外的被忽略的路由,然后我开始输入新行。之后routes.I,Intellisense 会弹出.Ignore.IgnoreRoute,听起来都差不多。

根据 MSDN 文档,您可以看到一个是该类的实例方法,System.Web.Routing.RouteCollection另一个是该类的扩展方法System.Web.Mvc.RouteCollectionExtensions

  • RouteCollection.Ignore:“如果请求 URL 满足指定的约束,则定义不应检查与路由匹配的 URL 模式”(MSDN 文档)。
  • RouteCollection.IgnoreRoute:“忽略给定的可用路由列表和约束列表的指定 URL 路由”(MSDN 文档)。

两者都采用路由 URL 模式和一组限制在该 URL 模式上应用路由的约束。

0 投票
0 回答
379 浏览

asp.net-mvc - IgnoreRoute 在我的混合 MVC 和 ASP.NET 应用程序中似乎不起作用

我正在将现有的 aspx 文件路由到 mvc 控制器以进行测试,我还希望有一种方法可以使用 IgnoreRoute 忽略路由,然后我可以只注释掉该行以在 aspx 和 MVC 版本之间切换。例如 a/b/mypage.aspx 路由到控制器 = 比利,动作 = 索引。

这是我尝试过的 MapRoute 由于先前的 IgnoreRoute 调用而没有效果的地方:

这是我对应该发生什么的理解......
RouteExistingFiles 是为了考虑路由确实存在的 aspx 文件。
axd 文件不会被路由
aspx 文件不会被路由
map 路由应该没有效果,因为mypage.aspx应该被前IgnoreRoute一行忽略。

问题是IgnoreRouteaspx 似乎没有改变任何东西,MapRoute仍然发生。

任何帮助表示赞赏。

0 投票
2 回答
6180 浏览

asp.net-mvc - ASP.NET MVC 路由图

请帮助我更正我的 ASP.NET MVC 路线图。

我有一个带有 ActionLink 的菜单项:
<li>@Html.ActionLink("Articles", "List", "Article")</li>

在主页上,它看起来像: localhost/Article 没关系。

但是在带有 URL 的具体文章页面上,localhost/Article/List/11我的菜单链接是相同的: localhost/Article/List/11

但是我需要localhost/Article

我的路线图代码如下:

这是控制器代码:

0 投票
1 回答
260 浏览

c# - 路由需要忽略名为“ClientBin”的文件夹中的内容,该文件夹是服务器上的绝对物理路径,因此不会被路由 ASP.NET MVC

我们有一个 Silverlight 4 组件,它通过引用服务器上的绝对物理路径,从名为“ClientBin”的文件夹中加载内容,如下所示:

C:\SomethingWebApplication\ClientBin\Uploads\carimage.jpg

我们希望路由引擎忽略上述路径。

我尝试了以下方法:

请回答上面的空白,以确保 ASP.NET MVC 忽略名为“ClientBin”的文件夹中的硬编码物理图像

0 投票
1 回答
265 浏览

routing - ServiceStack 4:忽略后备路由中的 favicon.ico

我在 ServiceStack.Razor 上构建了一个或多或少的静态网站,其路由定义为以下模式:我试图忽略 favicon.ico,但将“/”或“/en-us”等路径路由到 HomeScenario . 其他示例路线是 /{Lang}/cook 或 /{Lang}/cheer 等。

不幸的是,我目前的方法并没有忽略 favicon.ico。我想实现这一点,而不希望编写大量额外的代码。

这是默认请求

0 投票
1 回答
283 浏览

c# - 有人可以解释一下这条忽略路线是如何工作的吗?

所以我在我的 MVC4 中添加了一个 ASMX Web 服务,但是当我尝试访问它时,我得到了一个“找不到资源”错误。经过搜索,我在这里找到了答案。

简而言之,我必须将以下 IgnoreRoute 添加到我的 RouteConfig 文件中。

我非常了解 MVC 中的 MapRoute 功能,但是 IgnoreRoute 并没有那么多。我知道它的目标是 .asmx 后缀,但我不确定这个快速修复的方式和原因。

这个 IgnoreRoute 是如何工作的,以及它究竟为什么让我的 MVC 应用程序神奇地了解如何查找和执行我的 Web 服务?顺便说一句,目前我唯一的映射路线是默认路线,但是是否有另一种/更好的方法可以使用 MapRoute 或其他修复方法解决此问题?

0 投票
1 回答
129 浏览

asp.net-mvc - *.config 文件的 IgnoreRoute 在哪里?

*.config 文件没有 IgnoreRoute,但我无法请求 web.config 或其他具有 .config 扩展名的文件。

这个限制到底在哪里定义?

0 投票
1 回答
550 浏览

c# - 如何让 ASP.NET MVC IAuthorizationFilter 尊重 IgnoreRoute

我正在使用流行的Elmah.MVC错误记录 NuGet 包。所以我可以导航到 /elmah 来查看我的错误日志。我有以下 IgnoreRoute 语句,以便 MVC 忽略 /elmah 路由:

我编写了以下授权过滤器。当我导航到 /elmah 时,如何阻止下面的过滤器执行。当然,它必须有某种方式来尊重我告诉它忽略的路线?

0 投票
0 回答
272 浏览

asp.net-mvc - 带有文件扩展名的 IgnoreRoute 在 MVC 中不起作用

我有一个 Content 文件夹,我希望 Content 文件夹中的所有 html 文件都被访问,所以我在 RouteConfig.cs 文件的 RegisterRoutes() 方法的顶部添加了这一行,如下所示

但我仍然可以访问该文件。

我什至尝试给出这样的静态值

像这样

但仍然能够访问该文件,我是否遗漏了一些东西,我该如何实现这种行为。