当前位置:编程学习 > C#/ASP.NET >>

asp.net 伪静态如何只保留传过来的一个值,现在有两个,但我只想要期中的一个怎么解决啊!

<a href='visalist_q_<%#Eval("RegionEname") %>_<%#Eval("Regionid") %>.html'><span class="eaimg2"><%#Eval("RegionName") %></span></a>
前台页面链接,带有两个参数,现在我作伪静态,
<RewriterRule>   
 <LookFor>~visalist(.+?).html</LookFor>  
  <SendTo>~visalist.aspx?id=$1</SendTo>  
 </RewriterRule>
传过来的参数包括RegionName和Regionid但是我只想要Regionid这个值,该怎么实现啊!!!!  --------------------编程问答-------------------- try
<LookFor>~visalist_q_([^_]+)_(.+).html</LookFor>  
<SendTo>~visalist.aspx?id=$2</SendTo>

如果Regionid是数字
<LookFor>~visalist_q_(.+)_(\d+).html</LookFor>  更准确 --------------------编程问答--------------------
引用 1 楼 dongxinxi 的回复:
try
<LookFor>~visalist_q_([^_]+)_(.+).html</LookFor>  
<SendTo>~visalist.aspx?id=$2</SendTo>

如果Regionid是数字
<LookFor>~visalist_q_(.+)_(\d+).html</LookFor>  更准确
这样写提示有问题啊
--------------------编程问答--------------------
引用 1 楼 dongxinxi 的回复:
try
<LookFor>~visalist_q_([^_]+)_(.+).html</LookFor>  
<SendTo>~visalist.aspx?id=$2</SendTo>

如果Regionid是数字
<LookFor>~visalist_q_(.+)_(\d+).html</LookFor>  更准确





<a href='visalist_q_<%#Eval("RegionEname") %>_<%#Eval("Regionid") %>.html'><span class="eaimg2"><%#Eval("RegionName") %></span></a>
说错了,现在传过来的是三个参数  分别是“q、RegionEname、Regionid”,
现在我只想要第一个和第三个(q、RegionId) --------------------编程问答-------------------- 3个参数,应该是array[0],array[1],array[2]
array[3]是第四个了,肯定会超出索引范围 --------------------编程问答--------------------
引用 4 楼 gxingmin 的回复:
3个参数,应该是array[0],array[1],array[2]
array[3]是第四个了,肯定会超出索引范围
嗯,是四个,那现在只想保留前三个,显示的链接只有三个参数 最后一个Regionid没有,像http://localhost:3813/400visa/visalist_q_beijing.html这样子, --------------------编程问答--------------------
引用 4 楼 gxingmin 的回复:
3个参数,应该是array[0],array[1],array[2]
array[3]是第四个了,肯定会超出索引范围

我伪静态这样配置
   <RewriterRule>
        <LookFor>~visalist_(/d+)_(/d+)_(/d+)_(/d+).html</LookFor>
        <SendTo>~visalist.aspx?name=$1&mark=$2&couname=$2&id=$2</SendTo>
   </RewriterRule>
提示 找不到页面, 我百度的方法  不正确 --------------------编程问答--------------------
引用 5 楼 unfish 的回复:
http://localhost:3813/400visa/visalist_q_beijing.html

有那么复杂?
href='visalist_q_<%#Eval("RegionEname") %>.html
参数映射后可逐个分组,用得着还在页面里拆分? --------------------编程问答--------------------
引用 6 楼 unfish 的回复:
<SendTo>~visalist.aspx?name=$1&mark=$2&couname=$2&id=$2</SendTo>

不错,已经很接近了
<SendTo>~visalist.aspx?name=$1&mark=$2&couname=$3&id=$4</SendTo>
$1指是原地址中的第一对小括号里的值,$4就是第4组 --------------------编程问答--------------------
引用 8 楼 dongxinxi 的回复:
引用 6 楼 unfish 的回复:
<SendTo>~visalist.aspx?name=$1&amp;mark=$2&amp;couname=$2&amp;id=$2</SendTo>
不错,已经很接近了
<SendTo>~visalist.aspx?name=$1&amp;mark=$2&amp;couname=$3&amp;id=$4……

这样写 提示地址不存在,另外我前台页面
<a href='visalist_q_<%#Eval("RegionEname") %>_<%#Eval("Regionid") %>.html'><span class="eaimg2"><%#Eval("RegionName") %></span></a> 
 传过来4个参数 
  但是我想浏览器显示的链接只带有三个参数  也就是把最后一个参数去掉 --------------------编程问答--------------------
引用 6 楼 unfish 的回复:
引用 4 楼 gxingmin 的回复:3个参数,应该是array[0],array[1],array[2]
array[3]是第四个了,肯定会超出索引范围
我伪静态这样配置
   <RewriterRule>
        <LookFor>~visalist_(/d+)_(/d+)_(/d+)_(/d+).html</LookFor>
        <S……

      <LookFor>~visalist_(\d+)_(\d+)_(\d+)_(\d+).html</LookFor> --------------------编程问答--------------------
引用 10 楼 hjywyj 的回复:
引用 6 楼 unfish 的回复:
引用 4 楼 gxingmin 的回复:3个参数,应该是array[0],array[1],array[2]
array[3]是第四个了,肯定会超出索引范围
我伪静态这样配置
   <RewriterRule>
        <LookFor>~visalist_(/d+)_(/d+)_(/d+)_(/d+).html</LookFor>
   ……

这样写还是不行啊,
我之前这样写  <LookFor>~(.+?).html</LookFor>
        <SendTo>~visalist.aspx?id=$1</SendTo>
测试完全没有问题, --------------------编程问答-------------------- --------------------编程问答-------------------- 帮帮我吧
补充:.NET技术 ,  C#
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,