博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
摘要:ASP.NET的路由
阅读量:5992 次
发布时间:2019-06-20

本文共 1089 字,大约阅读时间需要 3 分钟。

原文:

对物理存在文件的路由

在成功注册路由的情况下,如果我们按照传统的方式访问一个物理文件(比如、.css或者.js等),在请求地址满足某个路由的URL模板模式的情况下,我们需要将RouteTable的Routes属性代表的RouteCollection对象的RouteExistingFiles属性设置为True,如:

RouteTable.Routes.RouteExistingFiles = true;

来对物理存在文件进行路由。

1 public class Global : System.Web.HttpApplication 2     { 3         protected void Application_Start(object sender, EventArgs e) 4         { 5             RouteTable.Routes.RouteExistingFiles = true; 6             RouteTable.Routes.Ignore("{filename}.js/{*pathInfo}");  7             var defaults = new RouteValueDictionary { { "areacode", "010" }, { "days", 2 } };  8             var dataToken = new RouteValueDictionary { { "defaultCity", "BeiJing" }, { "defaultDays", 2 } }; 9             RouteTable.Routes.MapPageRoute("default", "{areacode}/{days}", "~/Default.aspx", false, defaults, null, dataToken);10         }11     }

 但是,假如我页面里面存在js、css等引用就会失效,因为这些文件也存在与物理路径上,同时匹配default路由,所以还要在进行路由注册之前,在Global.asax中调用RouteTable的Routes属性的Ignore方法,如:

RouteTable.Routes.Ignore("{filename}.js/{*pathInfo}");

去忽略掉这些物理存在的文件的路由。

 

转载于:https://www.cnblogs.com/Relict/p/3319867.html

你可能感兴趣的文章
北京Uber优步司机奖励政策(12月16日)
查看>>
基于场景的测试
查看>>
学点PYTHON基础的东东--数据结构,算法,设计模式---访问者模式
查看>>
[MySQL FAQ]系列 -- Too many open files
查看>>
TCP/IP模型各个层次的功能和协议
查看>>
C 游戏所要看的书
查看>>
Ehcache详细解读(转)
查看>>
UIImagePickerController本地化控件文字
查看>>
CSS3 页面跳转的动画效果
查看>>
Android中的跨进程通信方法实例及特点分析(二):ContentProvider
查看>>
POJ 2676/2918 数独(dfs)
查看>>
Linux kernel Panic 相关知识
查看>>
iOS 从相机或相册获取图片并裁剪
查看>>
ansilbe 入门001、ansible的介绍
查看>>
C++14介绍
查看>>
iOS-- 快速集成iOS基于RTMP的视频推流
查看>>
BZOJ1497: [NOI2006]最大获利[最小割 最大闭合子图]
查看>>
使用Ecplise git commit时出现"There are no stages files"
查看>>
Linux中变量#,#,@,0,0,1,2,2,*,$$,$?的含义
查看>>
C语言 · 核桃的数量
查看>>