獲取有關ASP.NET主機環境的詳細信息我可以獲得託管ASP.NET代碼的過程(即Cassini,IIS等)的詳細信息嗎?如何從代碼
我知道System.Environment
,但它對於網絡應用程序來說並不過分。
還有其他的東西可用嗎?
感謝
獲取有關ASP.NET主機環境的詳細信息我可以獲得託管ASP.NET代碼的過程(即Cassini,IIS等)的詳細信息嗎?如何從代碼
我知道System.Environment
,但它對於網絡應用程序來說並不過分。
還有其他的東西可用嗎?
感謝
你可以得到的httpRuntime一些更多的信息,但不是萬能的。
http://msdn.microsoft.com/en-us/library/system.web.httpruntime_members.aspx
如果你只是有興趣在什麼樣的,你是在運行環境中,你可以檢查
AppDomain.Current.FriendlyName
或
System.Diagnostics.Process.GetCurrentProcess().MainModule.ModuleName
我們有這樣的測試項目中的:
AppDomain appDomain = AppDomain.CurrentDomain;
if (appDomain.FriendlyName.ToUpper().StartsWith("/LM/W3SVC/") || // IIS
appDomain.FriendlyName.ToLower().EndsWith(".test.dll") || // Support for unit test as long as it ends with .test.dll.
(System.Diagnostics.Process.GetCurrentProcess().MainModule != null) && System.Diagnostics.Process.GetCurrentProcess().MainModule.ModuleName.Equals("WebDev.WebServer.EXE", StringComparison.CurrentCultureIgnoreCase)) // Support for Cassini.
{
...
}
這不是很漂亮,但它的工作原理。
謝謝你們,這兩個有用的答案。接受@ StephaneT的,因爲它有我正在尋找的數據(也許我的問題措辭不好),雖然非常有用,知道這兩個建議以供將來參考! – 2010-09-22 16:28:52