获取有关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