最近,我問這個:C#IIS 7基地址
Get Base URL of My Web Application
這個工作在一定程度上在調試,因爲我用的是VS開發服務器。
我那麼產生的安裝,安裝,然後將指向IIS 7
我:
void Application_Start(object sender, EventArgs e)
{
_baseUrl = HttpContext.Current.Request.Url.ToString();
....
}
但是,這引發了以下錯誤:
請求不在可用這方面
然後,我做了一些閱讀,這裏是爲什麼發生這種情況:
我然後移動的代碼從出向的Application_Start的Application_BeginRequest,使用上述如我發現的Application_BeginRequest正在執行幾次的技術。
但問題是我需要IIS 7的基本URL,在的Application_Start使用,所以我有一個全局的字符串我試圖設置:
FirstRequestInitialization.Initialize(context);
但不是surpriseingly嘗試此時:
Application["BaseUrl"] = HttpContext.Current.Request.Url.ToString();
我得到這個錯誤: 'Microsoft.Web.Administration.Application' 是 '型',而是使用類似 '變量'
我要的是IIS 7的基本URL
我不能使用目錄條目,因爲我不能支持IIS 6
我怎樣才能做到這一點?任何解決方法?我可以從VS執行AppCmd嗎?
任何幫助非常感謝。謝謝!
我想補充以下評論你想檢查_arbitraryUrl在執行鎖之前是否爲空,並且只有在鎖爲空時才執行該鎖,否則就會不必要地鎖定每個請求。 – 2013-04-11 17:19:31
Thansk,趕上! – Dai 2013-04-11 20:05:01
感謝Dai,CarlosAg,我想在應用程序啓動時在IIS7中爲所有應用程序創建超鏈接,這就是爲什麼我需要基本URL。 – 2013-04-11 20:19:08