我正在编写一个通用库供我所有的网络项目使用。其中一项功能是永久重定向,如下所示:
public static void PermanentRedirect(string url, HttpResponse response, bool endResponse)
{
url = //resolve url here. how?
response.Status = "301 Moved Permanently";
response.AddHeader("Location", url);
if (endResponse) response.End();
}
如何在不通过当前页面访问的情况下解析 URL Page.ResolveUrl
?请注意,我可以更改方法签名,但我不希望这样做,因为我认为这会使 API 负担过重。
我有几个重载,所以我想要的用法是:
WebUtility.PermanentRedirect("~/somewhere/somepage.aspx")