.net - 我如何知道我是否在网络环境中运行?

标签 .net asp.net

我想知道是否有人有检测线程是否在 Web 环境中运行的方法。

HttpContext.Current

不可靠,因为我在没有 HttpContext 的后台线程中进行这些检查。这好像是
HttpRuntime.AppDomainAppId

非常可靠(如果它为空,那么我不在网络应用程序中),但我想知道是否还有其他人有一些尝试过的真正技术。

顺便说一句,我将把它用于各种事情。例如这段代码:
if (HttpRuntime.AppDomainAppId != null)
        {
            config = WebConfigurationManager.OpenWebConfiguration("~");
        }
        else
        {
            config = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);
        }

谢谢
乔尼

最佳答案

试试 HostingEnvironment.IsHosted ,我认为它会按预期工作

关于.net - 我如何知道我是否在网络环境中运行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3969260/

相关文章:

javascript - ASP.Net MVC jQuery UI DatePicker 日期格式

c# - 使用计时器控件时如何将小时文本更改为分钟

.net - 计算栈和线程栈的区别

.net - Winforms/WPF 应用程序可以充当 HTTP 服务器吗?

javascript - 在客户端设置显示没有任何 asp 面板在任何 linkBut​​tonclick 上重新显示它

c# - 将 Task<A> 异步转换为 Task<B>

c# - ASP.NET MVC5 Entity Framework 应用程序中的单一上下文

asp.net - 是否有与 ASP.NET 中的 Java EE ServletContext 等效的东西?

c# - ViewBag、viewdata 和模型属性

.net - WCF 生成的代理依赖于顺序,并且服务向序列添加了新元素