我一直想知道,假设您有两个运行在同一应用程序池中的asp.net网站。

我们称它们为网站1和网站2

这两个网站都引用了一些共享代码,因此将其称为Awesome.dll

可以说Awesome.dll包含一个如下定义的类

public static class Foo
{
   public static string Bar { get; set; }
}

我的问题:

两个网站是否共享相同的静态类,或者它们都有自己的隔离副本?也就是说,如果网站1更改为Foo.Bar,该更改是否反射(reflect)在网站2中?

最佳答案

我的理解是,尽管这些网站将位于同一个应用程序池中,但它们仍将位于自己的App Domain中。这意味着他们看不到彼此的对象,并且每个对象都有自己的静态类实例化。

关于asp.net - IIS应用程序池和静态类,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/11071067/

10-13 06:06