ASP.NET Mvc绝对URL与网站内的应用程序

时间:2010-08-26 11:05:31

标签: asp.net-mvc iis-7

我在IIS上有一个网站(“myWebsite”),另一个在这个网站(“secondWebsite”)中有一个应用程序。两者都是ASP.NET Mvc网站。

我有一种在第一种方法上完美运作的方法:

public static string AbsolutePath(this UrlHelper url, string path)
    {
        Uri requestUrl = url.RequestContext.HttpContext.Request.Url;
        string absoluteAction = string.Format("{0}{1}", requestUrl.GetLeftPart(UriPartial.Authority), path);
        return absoluteAction;
    }

结果是:http://myWebsite.com/path

我在第二个网站上有相同的方法,结果是一样的,这是逻辑,但我不想要它!

结果应为:myWebsite.com/secondWebsite/path。 (错过http://垃圾邮件预防的原因^^)。

有没有好办法呢?

感谢。

2 个答案:

答案 0 :(得分:1)

您可以尝试使用

string absoluteAction = string.Concat(Request.Url.Authority, 
    Request.ApplicationPath, path);

答案 1 :(得分:0)

您是否可以使用 Server.ResolveUrl(“〜/ Path”); 作为从应用程序根目录进行重新定位。