知识大全 浅谈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.NET MVC框架中的URL路径选择场景

ASP.NETMVC框架中的URL路径选择场景  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  A

知识大全 浅谈ASP.NET MVC中的FluentHtml与连续接口

浅谈ASP.NETMVC中的FluentHtml与连续接口  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一

知识大全 ASP.NET中利用HTTP报头状态码实现SEO

ASP.NET中利用HTTP报头状态码实现SEO  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  

知识大全 asp.net获取URL和IP地址

asp.net获取URL和IP地址  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  获取URL: 

知识大全 在 ASP.NET 中执行 URL 重写

在ASP.NET中执行URL重写  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!    引言  让我

知识大全 ASP.net实现无扩展名的URL重写

ASP.net实现无扩展名的URL重写  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  URL重写

知识大全 Asp.net关于对url编码的转化

Asp.net关于对url编码的转化  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  今天突然遇到

知识大全 ASP.NET AJAX 4.0 Preview 1

ASP.NETAJAX4.0Preview1  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  JA

知识大全 在ASP.NET中自动给URL加上超级链接

在ASP.NET中自动给URL加上超级链接  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  作为一

知识大全 在ASP.NET中实现Url Rewriting

在ASP.NET中实现UrlRewriting  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  概