asp.net 内部重定向
1.
/*
* 2、
* Context.RewritePath()
* 使用给定路径重写 URL。(内部重写)
* 内部请求重写
*/
public static void TestTwo()
{
//带有参数 处理
//http://localhost:49796/testtwo/{id}
string result = "";
if (Contains(AbsolutePath, @"testtwo/\d+$", out result))
{
RewritePath(GetVirtualPath("~/test/testone.aspx?id=" + GetIntStr(result)));
} //没有参数
//http://localhost:49796/testtwo{*catchall}
if (AbsolutePath.Contains("testtwo"))
{
RewritePath(GetVirtualPath("~/test/testone.aspx"));
}
}
/*
* 3、
* Context.RewritePath()
* 使用给定路径重写 URL。(内部重写)
* 内部请求执行转移
*/
public static void TestThree()
{
//带有参数 处理
//http://localhost:49796/testtwo/{id}/{name}/
string result = "";
if (Contains(AbsolutePath, @"testthree/\d+/\w+/$", out result))
{
result = result.Replace("testthree","");
_Server.Transfer("~/test/testone.aspx?id=" + GetIntStr(result) + "&name=" + GetStringStr(result));
} //没有参数
if (AbsolutePath.Contains("testthree"))
{
_Server.Transfer("~/test/testone.aspx");
}
}
正则匹配
//判断 制定的字符串 在源字符串中是否匹配
//返回 第一个匹配项
private static bool Contains(string source, string target, out string firstMatch)
{
firstMatch = ""; Match result = Regex.Match(source, target, RegexOptions.IgnoreCase | RegexOptions.Singleline);
if (result.Success)
{
firstMatch = result.Value;
return true;
}
return false;
} //获取字符串中的第一个数字字符匹配项
private static string GetIntStr(string source)
{
Match result = Regex.Match(source, @"(\d+)", RegexOptions.IgnoreCase | RegexOptions.Singleline);
if (result.Success)
{
return result.Value;
}
return "";
}
//获取字符串中 第一个字符串匹配项
private static string GetStringStr(string source)
{
Match result = Regex.Match(source, @"([a-z_]+)", RegexOptions.IgnoreCase | RegexOptions.Singleline);
if (result.Success)
{
return result.Value;
}
return "";
}
2.两张图片对比区别


asp.net 内部重定向的更多相关文章
- asp.net php asp jsp 301重定向的代码
介绍一下针对各类程序系统实施301重定向的代码: 1.Linux主机重定向 Godaddy的Liunx主机,Godaddy本身已经支持Apache,所以直接创建一个.htaccess文件就可以了,一般 ...
- asp.net内部原理3
asp.net内部原理(三) 第三个版本 (最详细的版本) 前言: 今天继续吧这个系列补齐,这几天公司的项目比较忙,回到家已经非常的累了,所以也没顾得上天天来这里分享一些东西和大家一起探讨,但是今天晚 ...
- 【原创】asp.net内部原理(三) 第三个版本 (最详细的版本)
前言: 今天继续吧这个系列补齐,这几天公司的项目比较忙,回到家已经非常的累了,所以也没顾得上天天来这里分享一些东西和大家一起探讨,但是今天晚上我还是坚持打开电脑,分享一些asp.net生命周期的知识, ...
- 详细介绍ASP.NET页面重定向方法
ASP.NET中页面重定向的使用的很频繁,实现方法也有不同,自己也试过几种,现在总结一下. 一.Transfer Execute Redirect重定向方法介绍 1.Server.Transfer方法 ...
- ASP.NET内部原理(HttpHandler和HttpModule)
[IT168 技术文档]在以前的ASP时候,当请求一个*.asp页面文件的时候,这个HTTP请求首先会被一个名为 inetinfo.exe进程所截获,这个进程实际上就是www服务.截获之后它会将这个请 ...
- ASP.NET界面重定向传值
这么说吧,当程序启动时,ASP.NET会自动创建一些经常使用的类的实例,而这些实例就是ASP.NET的内置对象,常用的实例对象有:Response(来自HttpResponse类).Request(来 ...
- asp.net 301重定向代码
/// <summary> ///重定向代码 /// </summary> /// <param name="sender"></para ...
- ASP.NET - 网页重定向 Response.Redirect()
在网页中使用重定向,意思就是在网站中的某一个页面跳转到另一个页面. Response.Redirect(~/abc.aspx); 使用“~”的作用是可以从任意位置跳转. 如果没有“~”,那么跳转的时候 ...
- ASP 文件内部访问数据库的通常途径
创建至数据库的 ADO 连接(ADO connection) 打开数据库连接 创建 ADO 记录集(ADO recordset) 打开记录集(recordset) 从数据集中提取你所需要的数据 关闭数 ...
随机推荐
- Ajax:Cross-Origin Resource Sharing(转)
实例:http://blog.csdn.net/hongweigg/article/details/39054403 通过XHR实现Ajax通信的一个主要限制,来源于跨域安全策略.默认情况下,XHR对 ...
- oracle数据库ID自增长
使用sequence --创建sequenceCREATE SEQUENCE emp_sequence INCREMENT BY 1 -- 每次加几个 START WITH 1 ...
- 1 Intellij IDEA 个人常用快捷方式
个人常用快捷方式 alt+enter 万能键 inn if(xxx!=null) iter foreach ct ...
- JedisPool操作
Jedis 使用 commons-pool 完成池化实现. 先做个配置文件(properties文件): #最大分配的对象数 redis.pool.maxActive=1024 #最大能够保持idel ...
- c#快捷键设置和text输入限制
快捷键 使用KeyDonw事件 输入限制使用 KeyPress 事件 1.注意:如果是整个窗体的快捷键,一定要把窗体属性中的KeyPreview改为true private void textbox_ ...
- angularjs directive 实例 详解
前面提到了angularjs的factory,service,provider,这个可以理解成php的model,这种model是不带html的,今天所说的directive,也可以理解成php的mo ...
- Jasper_chart_create a new stacked chart
How to make a stacked chart 1, prepare data Source here we will create a csv file. 2, import/configu ...
- c# 输出excel、word实例只需一行代码
第一.首先下载 WindICFrameNet.dll 下载地址:http://pan.baidu.com/s/1dDBqC9r 第二.前台代码 <div style="display: ...
- Bootstrap 模态对话框 remote指定内容加载
第一个页面: .....其他内容..... <div class="modal" id="ID_ReformDetail"> <div cla ...
- iOS开发:详解Objective-C runTime
Objective-C总Runtime的那点事儿(一)消息机制 最近在找工作,Objective-C中的Runtime是经常被问到的一个问题,几乎是面试大公司必问的一个问题.当然还有一些其他问题也几乎 ...