可以通过静态方法实例化IWindsorContainer吗?

时间:2010-09-02 14:08:53

标签: thread-safety castle-windsor static-members

我还在和温莎城堡闲聊一下。目前,我需要IWindsorContainer的所有页面都通过属性实例化了一个:

private IWindsorContainer WindsorContainer
  {
    get
    {
      if (_windsorContainer == null)
      {
        _windsorContainer = new WindsorContainer(new XmlInterpreter(Server.MapPath("~/CastleWindsorConfiguration.xml")));
      }
      return _windsorContainer;
    }
  }

我有点厌倦了从页面到页面复制和粘贴此属性和支持字段!我也不太了解IWindsorContainer的生命周期。

我宁愿通过某个类的静态属性获取其中一个,但有人知道我是否可以认为它是线程安全的?你们是如何与IWindsorContainer合作的?

1 个答案:

答案 0 :(得分:1)

标准和建议的做法是每个应用程序拥有一个容器实例

有关详细信息,请参阅以下相关问题:

是的,Windsor是线程安全的。