我有一个最初部署到 Windows 2000 服务器上的 .Net 1.1 框架的 ASP.NET 应用程序,我现在正在使用 2.0.50727 的 Windows 2008 服务器上使用它。我们使用波浪号 (~) 来解析应用程序的许多区域中的绝对路径,它适用于诸如 asp:hyperlink 控件(带有 run-at server 标签)之类的东西,但适用于使用 HyperLinkColumns 创建的绑定数据网格控件基于从我们的数据库返回的 ID 值的链接,波浪号被写入页面。
这段代码:
HyperLinkColumn oLink = new HyperLinkColumn();
oLink.DataNavigateUrlField = "IdField";
oLink.DataNavigateUrlFormatString = "~/Here{0}.aspx";
正在将其转储到页面:
<a href="~/Here171201.aspx">
IIS 或 .NET Framework 版本之间的哪些变化可能导致此功能不再起作用?Tilde 肯定在 1.1 中解决了 - 我在我们组织的十几个 1.1 Framework 服务器上部署了完全相同的代码。不幸的是,设置 DataNavigateUrlFormatString 的类没有访问页面的权限,所以我必须做一些事情来插入 Page.ResolveUrl 工作...