0

当然,我正在使用 MVC 3 和 Castle Windsor 开发应用程序。我无法让 Windsor 实例化多个对象 - 即使该服务可能已使用 Transient 或 PerWebRequest 注册。

container.Register(Component.For<ISession>().LifestylePerWebRequest().ImplementedBy<SessionImpl>());

据我所知,这是所有相关代码。解析 ISession 工作正常,接收 SessionImpl 对象。

SessionImpl 只是我为显示问题而创建的一个虚拟对象:

public class SessionImpl : ISession
{
    public SessionImpl()
    {
         //Called once   
    }

    public void Dispose()
    {
        //Called once 
    }
}

当我收到下一个请求的 ISession 已经被处理时,我首先注意到了这个问题——所以我确信我每次都得到相同的 ISession。有什么想法我可能做错了吗?它在解决方案资源管理器 -> 参考中显示 Castle Windsor 3.0.0。

4

1 回答 1

1

你的生活方式不匹配。修理它。

于 2012-08-11T23:55:49.650 回答