快速业务通道

ASP.NET Web Forms 4.0简介

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-05-20
理的 {category} 和 {category}/{page} 路由。为此,将以下粗体显示的代码 添加到 Application_Start 方法中。

(代码片段– Web Forms 4.0 实验– Application_Start 方法)

C#

protected void Application_Start(object  sender, EventArgs e)
{
RouteTable.Routes.Add("Category", new Route ("{category}", new PageRouteHandler("~/Default.aspx")));
RouteTable.Routes.Add ("CategoryAndPage", new Route("{category}/{page}", new PageRouteHandler ("~/Default.aspx")));
}

注意: RouteTable 类是 ASP.NET Routing 引擎的主要 类之一。它是存储为应用程序定义的 URL 路由的集中位置。

您可以向 RouteTable 添加路由,方 法是指定一个唯一标识它们的名称,并创建 RouteBase 类的具体实现,在本例中为 Route 类。

路由是用于处理请求的 URL 模式,并且还可以用于动态构建 URL。Route 类允许您指定如何在 ASP.NET 应用程序中处理路由。您为各 URL 模式创建一个 Route 对象,它将映射到可处理与该模式对应的请求的 类。

以上代码使用新的 PageRouteHandler 类匹配对一个页面的传入请求。这个类支持集成 Web Forms 与 ASP.NET Routing。

有关更多信息,请参见 RouteTable、RouteBase 和 Route 类。

任务 2 –使用 RouteUrlExpressionBuilder 修改导航链接

在本任务中,您将修改应用程序的导 航链接,以使用前面的任务中定义的路由。您将利用新的 RouteUrlExpressionBuilder,方法是为应用程 序添加双向路由支持。这意味着您将能够生成基于路由定义的动态 URL,从而能更加轻松地管理 ASP.NET 页面中注册的所有路由,而不需要编写固定静态链接。

6.在应用程序中启用 RouteUrlExpressionBuilder。为此,在 Web.cofig 文件中,在<compilation> 节点中添加以下突 出显示的 <expressionBuilders> 节点。

Web.config

...
<system.web>
   ...
<compilation debug="true"  targetFramework="4.0" />
<expressionBuilders>
<add  expressionPrefix="RouteUrl" type="System.Web.Compilation.RouteUrlExpressionBuilder"/>
</expressionBuilders>
</compilation>
   ...
<system.web>
...

注意:表达式生成器解析声明性表达式,并创建代码来 检索绑定到控件属性的值。在非编译的场景中,支持非编译特性的表达式生成器将在运行时计算表达式。

7.修改代码,在 Default.aspx 页面中生成类别导航链接,以使用新定义的路由。为此,在 Solution Explorer 中,双击 Default.aspx 并将所有类别 HyperLink 控件的 NavigateUrl 属性替换为 以下值。

Default.aspx

...
<ul id="categoryTabs">
<li>
<asp:HyperLink runat="server" 
NavigateUrl="<%$ RouteUrl:RouteName=Category,  category=Bikes %>"
OnLoad="CategoryLink_Load" Text="Bikes" />

<asp:HyperLink runat="server"
NavigateUrl="<%$ RouteUrl:RouteName=Category,  category=Components %>"
OnLoad="CategoryLink_Load" Text="Components" />

<asp:HyperLink runat="server" 
NavigateUrl="<%$  RouteUrl:RouteName=Category, category=Clothing %>"
OnLoad="CategoryLink_Load"  Text="Clothing" />

<asp:HyperLink runat="server" 
Nav

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号