知识大全 浅谈ASP.NET 4.0 SEO增强中的UrlRouting
Posted 规则
篇首语:学问勤中得,富裕俭中来。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 浅谈ASP.NET 4.0 SEO增强中的UrlRouting相关的知识,希望对你有一定的参考价值。
浅谈ASP.NET 4.0 SEO增强中的UrlRouting 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!
在 NET 之前我们为了做出搜索引擎友好的 对用户也友好的url都是需要自己实现Url重写 现在不需要了
NET 为我们做这一切 UrlRouting之所以称之为Routing
是因为它不但实现了Url重写还可以通过参数得到重写后的Url在页面上使用
Url Routing 的通常用法
UrlRouting在Asp NET MVC项目中被广泛使用 在MVC中很好用 所以移植到了webform中
我们先看下在webform中的使用方式
假定一个使用场景 我们需要做博客每日文章的页面 我们希望的url地址是
/archive/ / / /default aspx
这个地址将被映射到~/posts aspx文件上
要使用UrlRouting 需要将UrlRouting的规则注册到RouteTable中 如下Global文件中注册Routing规则的代码
public static void RegisterRoutes(RouteCollection routes)
routes Ignore( resource axd/*pathInfo );
routes MapPageRoute( blogs
//给这个UrlRouting规则起一个名字
archive/year/month/date/default aspx
//希望的友好Url地址格式 ~/blogs aspx
//映射到的aspx页面路径 false //是否需要检查用户权限
new RouteValueDictionary
year DateTime Now Year month DateTime Now Month date DateTime Now Date
//参数的默认值
new RouteValueDictionary
year @ ( | )\\d month @ \\d date @ \\d
//参数的规则 我们在这里限制url中的年月日是我们想要的数据格式 );
void Application_Start(object sender EventArgs e)
//在Application_Start时注册的Routing规则 RegisterRoutes(RouteTable Routes);
在页面中使用UrlRouting参数值
) 在后台代码中使用Route的值
protected void Page_Load(object sender EventArgs e)
string year = (string)RouteData Values[ year ];
string month = (string)RouteData Values[ month ];
string date = (string)RouteData Values[ date ];
) 在页面上使用
<asp:Literal ID= literalYear runat= server Text= <%$RouteValue:year %> ></asp:Literal>
<asp:Literal ID= literal runat= server Text= <%$RouteValue:month %> ></asp:Literal>
<asp:Literal ID= literal runat= server Text= <%$RouteValue:date %> ></asp:Literal>
)在DataSource中使用RouteParameter
<asp:SqlDataSource ID= SqlDataSource runat= server ConnectionString= <%$ ConnectionStrings:TestDb %>
SelectCommand= SELECT BlogID BlogTitle FROM Blogs Where Category = @category > <SelectParameters>
<asp:RouteParameter Name= category RouteKey= category /> </SelectParameters> </asp:SqlDataSource>
) 在页面上显示RouteUrl
<a <%=GetRouteUrl( blogs new year= month= date= ) %> > 年 月 日的博客</a>
UrlRouting和UrlRewrite的区别
UrlRouting相对于Url重写是一个比较新的事物 UrlRouting的长处是可以做双向转换 既可以做url重写
还可以根据一些参数获得重写后的Url地址
cha138/Article/program/net/201311/12223相关参考
ASP.NETMVC框架中的URL路径选择场景 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! A
知识大全 浅谈ASP.NET MVC中的FluentHtml与连续接口
浅谈ASP.NETMVC中的FluentHtml与连续接口 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一
ASP.NET中利用HTTP报头状态码实现SEO 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!
asp.net获取URL和IP地址 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 获取URL:
在ASP.NET中执行URL重写 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 引言 让我
ASP.net实现无扩展名的URL重写 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! URL重写
Asp.net关于对url编码的转化 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 今天突然遇到
知识大全 ASP.NET AJAX 4.0 Preview 1
ASP.NETAJAX4.0Preview1 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! JA
在ASP.NET中自动给URL加上超级链接 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 作为一
在ASP.NET中实现UrlRewriting 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 概