低代码到底是不是行业毒瘤?一线大厂怎么做的?戳此了解>>> 了解详情
写点什么

ASP.NET Web Forms 4.0 中的双向 Routing 支持

2009 年 3 月 07 日

.NET Framework 3.5 SP1 已经包含了 ASP.NET Routing 引擎。现在微软已经在 ASP.NET WebForms 4.0 中增加了对 Routing 引擎更好的支持,它使用表达式构造器进行双向 Routing。

Channel 9 刚发布了一个 10-4 的新视频,展示如何在 ASP.NET 4.0 中使用这个新功能

下面是视频中展示的一段代码。他们使用了一个经典示例,展示如何将 Product.aspx?category=Jerseys 映射至 Product/Jerseys。在使用 ASP.NET Routing 引擎时,我们可以在 Application_Start 中向 RouteTable 添加这样的映射:

复制代码
RouteTable.Routes.Add("Product",
new Route("Product/{name}",
new PageRouteHandler("~/Product.aspx")));

目前为了得到双向的 Routing 支持,用户必须对 Query String 进行 URL 重写。不过,使用 ASP.NET 4.0 时,用户可以注册如下的表达式构造器(expression builder):

复制代码
<system.web>
<compilation>
<expressionBuilders ...>
<add expressionPrefix="RouteUrl"
type="System.Web.Compilation.RouteUrlExpressionBuilder" />
<add expressionPrefix="RouteValue"
type="System.Web.Compilation.RouteValueExpressionBuilder" />
</expressionBuilders>
</compilation>
</system.web>

第一个表达式用于生成 URL 而第二个用于获取 Route 值。在 aspx 页面中可以使用 $ 符号来访问表达式:

复制代码
<asp:HyperLink NavigationUrl="<%$ RouteUrl:RouteName=Product, name=Jerseys"
Text="Jerseys"
runat="server" />

如果要获取 name 属性中的值,用户可以使用 Route 对象而不是 Request 对象:

RouteData.Values["name"];或使用表达式构造器:

<%$ RouteValue:name %>用户可以利用 ASP.NET Routing 引擎和新的双向支持将 URL 和物理上的 Web Form 解耦,以便支持对搜索引擎更友好的 URL。

查看英文原文: Bi-Directional Routing Support in ASP.NET Web Forms 4.0

2009 年 3 月 07 日 09:041305
用户头像

发布了 157 篇内容, 共 44.4 次阅读, 收获喜欢 2 次。

关注

评论

发布
暂无评论
发现更多内容

组织部干部信息管理系统开发方案,智慧党建平台建设

WX13823153201

智慧党建平台建设

百度智能小程序打造购票观影一站式体验,影视宣发新玩法助力行业复苏

DT极客

避免短信接口被黑客刷取的方法

香芋味的猫丶

短信防刷 接口安全 短信验证码 短信防轰炸 短信防火墙

高并发架构---TCP

赖猫

TCP 后端 高并发 TCP/IP 服务器开发

在函数计算中到底该不该使用 VPC?

donghui

Serverless

比特币矿机工作原理

v16629866266

比特币 比特币区块链

如何利用策略模式避免冗长的if-else/switch分支判断代码?

码农架构

Java 学习 设计模式

TypeScript 渐进迁移指南

LeanCloud

JavaScript typescript nodejs

量化交易系统开发

威掂l8929545452

区块链 系统开发 量化交易系统 交易所

Linux网络之 从 C10K 到 DPDK

赖猫

c++ Linux linux编程 C10K DPDK

Intel首次公布11代酷睿桌面处理器性能:8核i9斩落锐龙12核

科技新消息

流行的后台管理系统模板总结

老魚

程序员 建站 web全栈

即构微信小程序直播组件是什么?有哪些功能?哪些小程序类目可以使用?

ZEGO即构

百度研究院的追星逐浪,中国科技的奋发自强

脑极体

量化策略交易软件开发|量化策略交易系统APP开发

开發I852946OIIO

系统开发

区块链轻节点:“身”轻,责任重

华为云开发者社区

区块链 数据 数据隐私 轻节点

BI项目失败?看看是不是缺少了这几项闭环!

博文视点Broadview

开发老人笔记:Git 常用命令清单

华为云开发者社区

git 代码 bug

红牛交易所app系统开发

威掂l8929545452

区块链 系统开发 APP开发 红牛交易所

开发更便捷 阿里云推出一站式应用研发平台EMAS 2.0

应用研发平台EMAS

阿里云 Serverless AI 低代码 移动研发平台

数据库表数据量大读写缓慢如何优化(2)「查询分离」

我爱娃哈哈😍

数据库 大数据 架构 后端 优化

OpenYurt v0.3.0 重磅发布:全面提升边缘场景下应用部署效率

阿里巴巴云原生

阿里巴巴 容器 云原生 k8s 开源项目

解决Windows2012 R2下安装PostgreSQL报错的问题

PostgreSQLChina

数据库 postgresql 开源

Serverless 架构到底要不要服务器?

Serverless Devs

Java 云计算 Serverless 运维 云原生

53w字!阿里首推系统性能优化指南太香了,堪称性能优化最优解

程序员小毕

Java 架构 性能优化 JVM 代码优化

【HTML】已经废弃的align(图像对齐方式)

学习委员

html html5 Web html/css 28天写作

为什么说“5G是第四次工业革命”,到底有哪些推动和影响?

一只数据鲸鱼

5G 物联网 数据可视化 工业物联网

自动驾驶汽车的发展史

anyRTC开发者

人工智能 自动驾驶 AI

Java Optimizing 读书笔记(一)

绝影-大数据

Redis 学习笔记 03:字典

架构精进之路

redis 七日更 28天写作

干货来袭!拼多多首推全新微服务进阶指南(全彩版)简直不要太香

程序员小毕

Java 架构 微服务 springboot SpringCloud

2021 ThoughtWorks 技术雷达峰会

2021 ThoughtWorks 技术雷达峰会

ASP.NET Web Forms 4.0中的双向Routing支持-InfoQ