代码之家  ›  专栏  ›  技术社区  ›  Kevin Pang

如何验证structuremap是否正确处理对象

  •  5
  • Kevin Pang  · 技术社区  · 15 年前

    我目前正在使用structuremap使用以下代码插入nhibernate isessions的实例:

    ObjectFactory.Initialize(x =>
    {
        x.ForRequestedType<ISession>()
            .CacheBy(InstanceScope.PerRequest)
            .TheDefault.Is.ConstructedBy(y => NHibernateSessionManager.Instance.GetSession());    
    });
    

    我假设cacheby(instancescope.perrequest)将正确地处理它创建的ISession,但我想确保。测试这个最简单的方法是什么?

    1 回复  |  直到 15 年前
        1
  •  4
  •   Kevin Pang    15 年前

    好的,根据 StructureMap documentation :

    还要注意,structuremap提供 没有清理功能 所持有对象的资源 容器 (container.ejectAllInstances()将 清除singleton对象)。到 日期,我不需要这个 行为或功能。我 一般假定 基本垃圾收集和适当的 课堂设计就足够了。

    我知道在使用nhibernate时调用isession.dispose()是最好的做法,所以要么我需要自己手动清理它,要么只是依靠垃圾收集来为我清理它。