忽略嵌入式资源路由 ASP.NET 4 WebForms
我在 asp.net 4 webforms 中使用路由。我有一个主题 dll,其中包含外观所需的所有图像、css 和 js 文件。我只有 1 个页面,可以动态加载页面中的控件。我使用路由来区分请求。定义了以下路由:
routes.Ignore("{resource}.axd/{*pathInfo}");
routes.MapPageRoute("Default-All-Pages", "Pages/{*OtherParams}", "~/Default.aspx", false);
已经定义了用于管理嵌入资源的处理程序。当应用程序通过代码执行时,将请求重定向到default.aspx。然后它继续加载 css 文件并再次将请求路由到 default.aspx。
我希望它将 css/jpg 请求路由到虚拟路径处理程序而不是页面。我应该定义什么路由,以便 default.aspx 页面不会处理文件请求?
I am using routing in asp.net 4 webforms. I have a theme dll which contains all the images, css and js files required for look and feel. I have only 1 page which dynamically loads the control in the page. I use routing to distinguish the request. Following routes are defined:
routes.Ignore("{resource}.axd/{*pathInfo}");
routes.MapPageRoute("Default-All-Pages", "Pages/{*OtherParams}", "~/Default.aspx", false);
Handler for managing the embedded resources is already defined. When the application is executed it by virtue of code, redirects the request to default.aspx. it then goes ahead to load the css file and again routes the request to default.aspx.
I want it to route the css/jpg request to virtual path handler and not the page. What route should I define so that the request for files will not be handled by default.aspx page?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
这解决了我的问题。
This solved my problem.
与忽略 HttpHandler 的方式相同,您可以为 css 和 jpg 文件添加忽略规则:
这些文件将从路由表中排除,并由任何注册的处理程序/模块/ISAPI 过滤器处理。
The same way you're ignoring HttpHandlers, you can add ignore rules for css and jpg files:
These will be excluded from the route table and will be handled by any registered handlers/modules/ISAPI filters.