0

我发现自己在我的 aspx 页面中经常使用 ResolveUrl 函数,但解析的路径始终是相对的。我希望能够使渲染路径以常规“ http://localhost/myproject/ ”开头

如果我更改文件的层次结构,如何在不破坏任何代码的情况下实现这一点?编写一个函数并为页面上的每个目标链接调用它会不会效率低下?

4

2 回答 2

1

~在解析 url 时使用。它将始终转到应用程序根目录。

例子

~/somedirectory/default.aspx

将解决...

{applicationRoot}/somedirectory/default.aspx

您将需要手动添加服务器地址:

Request.Url.Scheme + "://" + Request.Url.Host + ":" + Request.Url.Port

一个示例函数是

string ResolveAbsoluteUrl(string path)
{
    return Request.Url.Scheme + "://" + Request.Url.Host + ":" + Request.Url.Port + ResolveUrl(path);
}
于 2009-04-18T21:32:47.973 回答
-1

别介意伙计们,我从 Rick Strahl的帖子中在线找到了一些代码,这似乎是我可能会在我的情况下使用的东西!谢谢您的帮助

于 2009-04-18T21:44:32.487 回答