2013-08-05 91 views
5

我想在C#中獲取應用程序URL。我曾嘗試過使用:C#獲取應用程序url

HttpContext.Current.Request.ApplicationPath 

但是,只返回我「/」。我正在嘗試獲取應用程序基本網址的完整網址,該網址可能或可能不是簡單的「something.com」。在某些情況下,取決於環境,它是「something.com/foo/bar」。

我該如何做到這一點?

+0

是您的應用程序中運行的虛擬目錄,或後的反向代理? 'Request.ApplicationPath'在過去一直適用於我。 –

+0

在某個地方拋出一個調試器,並檢查'HttpContext.Current.Request'和'HttpContext.Current.Request.Url',你會發現很多有用的屬性,它們給你的URL格式很多 - 其中一個很可能會去成爲你正在尋找的東西。 –

回答

7

難道RawUrl就夠了嗎?

如果給你太多,你可以嘗試

VirtualPathUtility.ToAbsolute("~/"); 
7

試試這個:

string baseUrl = Request.Url.Scheme + "://" + Request.Url.Authority + Request.ApplicationPath.TrimEnd('/'); 
+0

這對我來說工作得很好Request.Url.Scheme +「://」+ Request.Url.Authority。 +1爲此:) – tariq

相關問題