【发布时间】:2011-06-06 18:54:06
【问题描述】:
这可能听起来是一个微不足道的问题,但由于某种原因它不是。
不需要重定向
Response.Redirect("~/folder1/folder2/some.aspx")
我需要这个位置,就好像它的行为一样
string navigatingUrl = Response.Redirect("~/folder1/folder2/some.aspx")
我开始尝试复制这个
string navigatingUrl = new Uri(HttpContext.Current.Request.Url,
new Uri("~/folder1/folder2/some.aspx", UriKind.Relative));
这会生成"http://www.fullRequestUrl/~/folder1/folder2/some.aspx"
编辑: 好吧,我知道为什么我绝对讨厌微软的 URL API。祝写这行代码的人见鬼去吧
else if (uriKind == UriKind.Relative)
{
// Here we know that we can create an absolute Uri, but the user has requested
only a relative one
e = GetException(ParsingError.CannotCreateRelative);
}
会有什么人会抛出这样的错误?这条 if 语句完全破坏了 API。
【问题讨论】: