点击时,我的页面上的链接会重定向到:URL重写在.net 3.5
http://www.abc.com/document.aspx?sid=42&rid=1&mid=1
我想表明它在地址栏中显示为:
http://www.abc.com/models/childfirst/inbrief
凡
models
成为值的值rid
childfirst
成为sid
inbried
值成为mid
我怎样才能做到这一点的价值?
点击时,我的页面上的链接会重定向到:URL重写在.net 3.5
http://www.abc.com/document.aspx?sid=42&rid=1&mid=1
我想表明它在地址栏中显示为:
http://www.abc.com/models/childfirst/inbrief
凡
models
成为值的值rid
childfirst
成为sid
inbried
值成为mid
我怎样才能做到这一点的价值?
根据您的示例URL,我假设您正在使用ASP.NET Web窗体。 如果这是正确的,我建议您检查URL Rewriting和URL Friendly配置。
我在.NET 3.5中使用过urlrewriter,它工作得很好。
*链接已删除,因为它不再是工具。
路由表:
http://msdn.microsoft.com/en-us/library/cc668201%28v=vs.100%29.aspx
你也可以使用路由表,
的Global.asax
的RegisterRoutes(RouteTable.Routes);在application_onstart
然后创建的路由需要:
routes.MapPageRoute( “名称”, “节/ {类别}”, “〜/部分/的Index.aspx”);
则可以使用:
_value = Page.RouteData.Values [ “类别”]作为串;
来获取每个部分的数据。
ps。 urlrewriter可以,但很难调试。我努力了。 – mark
routes.MapPageRoute只能在.net 4.0中工作,不在3.5我认为。 – user1904478
达斯汀·莱恩, 我有尝试你给的链接,并尝试这一点,但所有的时间其重定向到同一个页面,
<rewriter>
<rewrite url="/models/(.+)" to="/document.aspx?sid=$1&rid=$2&mid=$3" />
<rewrite url="/implementation/(.+)" to="/document.aspx?sid=$1&rid=$2&mid=$3" />
<rewrite url="/outcomes/(.+)" to="/document.aspx?sid=$1&rid=$2&mid=$3" />
<rewrite url="/publications/(.+)" to="/document.aspx?rid=$1&sid=$2&mid=$3" />
<rewrite url="/help/(.+)" to="/document.aspx?rid=$1&sid=$2&mid=$3" />
<rewrite url="/aboutus/(.+)" to="/document.aspx?rid=$1&sid=$2&mid=$3" />
<rewrite url="/review/(.+)" to="/document.aspx?rid=$1&sid=$2&mid=$3" />
</rewriter>
,我认为它不是说的$ 1,$ 2,$ 3的值东阳中我的目标网址类似于/document.aspx?sid=42 & rid = 1 & mid = 1但是当我在url中键入的是this/models/childfirst/inbrief。
疯了,我删除了链接。它显然被原主人抛弃了。 –
我明白了。谢谢。 –