我有点困惑。每个ASP.NET Web应用程序只有一个应用程序域,或者Web应用程序的单个应用程序池中可以存在1到100个应用程序域之间的任何位置
我有点困惑。每个ASP.NET Web应用程序只有一个应用程序域,或者Web应用程序的单个应用程序池中可以存在1到100个应用程序域之间的任何位置
Answers:
应用程序域是公共语言运行库(CLR)在每个.NET应用程序周围创建的逻辑和物理边界。
一个Web应用程序在单个“应用程序域”中运行,但可以通过Web /远程服务与其他域中的应用程序进行通信。
CLR可能允许在单个应用程序域中运行多个.NET应用程序,因此这意味着一个应用程序域可以由不同的应用程序共享,在这种情况下,它们可以彼此“直接”通信。
但是,大多数情况下,Web应用程序和应用程序域之间的关系是一对一的。
您可以阅读以下文章(非常简短,但写得很好),该文章解释了什么是应用程序域以及它们如何有用:http : //www.beansoftware.com/NET-Tutorials/Application-Domain.aspx。
另外,Scott Forsyth 在他的博客中解释了应用程序(IIS术语),Web应用程序(ASP.NET术语)和应用程序域之间的区别。