如何区分托管库是在 ASP.NET 应用程序上下文中运行还是在可执行文件中运行?
如何区分托管库是在 ASP.NET 应用程序上下文中运行还是在可执行文件中运行?
how to differentiate whether a managed library is running in the context of asp.net application or in a executable?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
这个问题其实没有多大意义。一个过程就是一个过程。但是您也许可以通过检查 HttpContext.Current 是否为 null 来判断您的库是否由 ASP.NET 加载。
This question doesn't really make a lot of sense. A process is a process. But you may be able to tell if your library is loaded by ASP.NET by checking to see if HttpContext.Current is null.
您可以检查
HttpContext.Current
是否返回null
。从技术上讲,如果 ASP.NET 应用程序在非工作线程上运行(即,如果您只是使用
new Thread(SomeProc)
),它也会在 ASP.NET 应用程序中返回null
,但是它应该在 99% 的时间里都能工作。You could check whether
HttpContext.Current
returnsnull
or not.Technically, it'll also return
null
in an ASP.NET application if it's running on a non-worker thread (i.e. if you just gonew Thread(SomeProc)
) but it should work 99% of the time.