【C#】 用Route进行URL重写
在.NET Framework 4中,微软推出了Route机制。这种机制不仅在MVC中大量运用,在WebForm中也可以使用。
和Contex.RewritePath()一样,Route功能也是写在Global.asax文件中。
1.设置默认页面
具体代码如下:
如代码所示,该路由会将网站默认转向SimpleURLRewriting页面。
实际访问后,效果如下:
2.配置参数
在实际项目中,我们访问网站时经常会使用参数,像这种情况应该怎么配置呢。
Global.asax:
页面后台代码:
它将获取URL中占位符为{parameter}的参数,因此通过此重写规则可访问如下页面:
但是对如下URL的请求,参数无效果
上图中,虽然没有在占位符为{parameter}的位置设置参数,参数项显示不为空。
这是因为在设置路由时,给{parameter}设置了默认参数。
3.设置正则表达式
除了想上面所示重写URL,设置默认页面及默认参数外,还能让占位符的参数满足一定的正则条件。
根据设置的正则条件要求,parameter必须是数字。
如不满足,则找不到改页面
4.PostBack数据回送
在设置默认页面时我们会发现,与使用Contex.RewritePath()后的效果不同,
使用路由功能后,页面的URL与地址栏中的URL保持一致。
因此在PostBack的时候,无需像Contex.RewritePath()一样对Form进行改写。
现在让我们看看实际效果:
重写规则代码:
5.链接处理
对URL进行重写后,可能会导致相对链接、图片和CSS的访问路径不正确的问题。
如在EN/SimpleURLRewriting.aspx中
访问页面时
因此当如果出现URL重写导致相对路径不正确时,为了确保这个图像和链接指向正确的网址,最好指定绝对路径地址。
转载于:https://www.cnblogs.com/nonkicat/p/3796590.html
【C#】 用Route进行URL重写相关推荐
- 配置伪静态(URL重写)
本篇借鉴了很多文章,这里做个记录. 有时我们的导航栏出现xx.aspx?id=x&name=xx 等等这样,会显得不好看,我们可以利用伪静态来美化我们的导航栏,伪静态的形式可以自己定义,本质还 ...
- ASP.net实现无扩展名的URL重写。简单、方便、无需ISAPI
URL重写已经有很多的方法,但是多数都有一个缺点,就是不支持无扩展名的网页.微软提供的方法需要在根目录里面建立jyk的文件夹,然后再建立一个default.aspx的文件,如果您有100名会员的话,这 ...
- 在 ASP.NET 中执行 URL 重写
在 ASP.NET 中执行 URL 重写 发布日期: 8/23/2004 | 更新日期: 8/23/2004 Scott Mitchell 4GuysFromRolla.com 适用范围: Micro ...
- Web服务器 之 Apache 2.x 服务器中的URL重写的配置和应用
作者:北南南北 来自:LinuxSir.Org 摘要: 本文是关于Apache 2.x 服务器中的URL别名规则的文档,它是通过rewrite模块来实现的.能过URL别名规则,我们能看到一个干净的UR ...
- Cento7+Nginx 之 URL重写
Cento7+Nginx 之 URL重写 我们前一篇文章写了一个Cento7+Nginx 反向代理实现多域名跳转,今天主要介绍一下Cento7+Nginx 之 URL重写, Hostname: ...
- asp.net用url重写URLReWriter实现任意二级域名 (转)
asp.net用url重写URLReWriter实现任意二级域名 Asp.net 用url重写(URLReWriter)实现任意二级域名 好久没有写技术文章,如果大家看不明白,就多看几篇,汗,或者,在 ...
- DTCMS插件的制作实例电子资源管理(四)URL重写
总目录 插件目录结构(一) Admin后台页面编写(二) 前台模板页编写(三) URL重写(四) 本实例旨在以一个实际的项目中的例子来介绍如何在dtcms中制作插件,本系列文章非入门教程,部分逻辑实现 ...
- ASP.NET Url重写
新建一个类,并实现IHttpModule接口 实现接口,在Init方法中处理请求,在请求方法中实现具体的Url重写操作 补充Url重写方法,通过 Request的Path对象获取请求文件路径,并根据请 ...
- apache配置反向代理以及实现url重写,防盗链
反向代理配置: 在apache配置文件中加上这一句 反向代理google(已测试) 安装mod_ssl模块:yum -y install mod_ssl 实现url重写: 在apache配置文件中加上 ...
- java urlrewriter_java url重写技术(UrlReWriter)
现在url重写技术用的越来越广泛了,很高兴今天和各位网友分享一下: 首先我们要从网上下一个UrlReWriter jar包 现在地址进不了,我这里有一个3.0版本的,文章底有下载地址,大家可以去下载 ...
最新文章
- android .9图片使用和一些技巧
- java中字符串分割器_java简易文本分割器实现代码
- ROS Gazebo(三):启动gazebo/URDF
- SpringBoot中使用POI实现自定义Excel布局式导出
- 《操作系统》实验报告——主存空间的分配与回收
- 每天一道LeetCode-----一个整数序列,每个元素出现两次,只有一个(两个)出现一次,找到这个(这两个)元素
- acm常见算法及例题
- [TJOI2011] 书架(线段数优化dp + 单调栈)
- ARM uboot中的.lds
- 动态规划问题中最长公共子序列---C语言实现
- 快手抢占短视频第一股,增长惊人,腾讯又是大赢家!
- 【Elasticsearch】Kibana优化过程(Optimize)过长或无法结束的解决方案
- mockjax MOCK.js的拦截ajax请求
- 4地形编辑插件_SketchUp高效建模插件
- 支持mysql8的客户端_mysql8 参考手册--mysql客户端帮助
- python控制灯开关_通过树莓派控制电灯开关
- 正则表达式之多种格式的电话号码匹配
- 《挪威的森林》--[日]村上春树
- HTML5实现首页动态视频背景
- 百度通用文字识别——识别验证码
热门文章
- 关于python的文章_关于python的一篇介绍文章
- 【CF-gym101889:J】Jumping frog(圆上跳----思维)
- 【LA4728】Square(求凸包(多边形)直径----旋转卡壳)
- java 骰子游戏_蓝桥杯-骰子游戏-java
- mysql8多表连接_MySQL 多个表的 连接
- es 时间字段聚合_es lucene搜索及聚合流程源码分析
- 2021-09-13Top-N 推荐系统,通常指的是个性化推荐系统,有别于热门推荐。
- 473.火柴拼正方形
- KNN的k该如何选择
- 解决办法!!!!UnsupportedClassVersionError Unsupported major.minor version 52.0