我是WCF和NHibernate的初学者.但是,我必须做一个涉及多个服务(使用WCF制作)和持久层(使用NHibernate制作)的小项目.
我的问题涉及ISession和ISessionFactory的使用.我已阅读(并看到)ISessionFactory的实例化非常繁重(并且是线程安全的).所以,我认为我可以在应用程序运行时期间只对该类进行一次实例化.我是正确的?
我的问题更多地涉及ISession类.我不确切知道我必须使用它的粒度.我认为我应该为每次调用服务操作使用/创建一个实例(我使用"per-call services").再一次,我是对的?
你是现货.会话工厂的构造成本很高,非常适合作为单例,而会话是一个包含"工作单元"的更轻量级的上下文对象.
要了解更多信息,您可以阅读有关提出此问题解决方案的城堡WCF设施.这是一篇探索它的博客文章.