首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何确定应用程序是否为web应用程序

如何确定应用程序是否为web应用程序
EN

Stack Overflow用户
提问于 2010-07-05 21:11:44
回答 4查看 11K关注 0票数 27

在运行于windows服务和web应用程序中的核心程序集中,我需要为每个用户会话存储信息。该服务将具有单个用户会话,并且web应用程序使用HttpContext.Current。

我想配置在核心程序集中使用哪种方法-约定优先于配置。我只想这样做一次,我相信当从Application_Start运行时,HttpContext.Current将为null。

如何可靠地确定应用程序是否是web应用程序?

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2010-07-05 21:27:59

代码语言:javascript
复制
if(HttpRuntime.AppDomainAppId != null)
{
  //is web app
}
else
{
  //is windows app
}
票数 44
EN

Stack Overflow用户

发布于 2017-01-31 20:56:28

这样就不会有人和我犯同样的错误了。

Assembly.GetEntryAssembly()不能定义它是否是web应用程序。当它作为服务运行时,Assembly.GetEntryAssembly()是空的,但是当我从VS调试时,它不是空的。

票数 2
EN

Stack Overflow用户

发布于 2010-07-05 21:27:06

如果可能,我建议将它作为类库中某个初始化方法的输入参数,在使用类库之前需要调用这些方法。

如果这不是一个选项,我会考虑HttpRuntime.Cache,我认为即使HttpRuntime.Current是空的,它也是非空的。我不是一个webforms的人,但我记得有人在某个地方提到过类似的问题(现在找不到这个问题)。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3179716

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档