我有一个应用程序架构,它包含以下层(或c#项目)。
根据http请求打开ISession并且其工作正常。
现在,我想在当前服务层之上添加wcf层。 wcf项目明确地调用原始服务层类。但是一旦我这样做,asp.net的会话/会话工厂变得无法使用/不可用。看起来,wcf在与asp.net完全不同的环境中运行。因此,我想将会话工厂和会话管理的初始化逻辑转移到wcf。我该怎么办?甚至以前是一个好习惯吗?我想添加wcf的原因之一是因为我想将操作暴露给其他应用程序(可能不是基于http的)。
非常感谢任何帮助,博客文章或书籍参考。
答案 0 :(得分:1)
你可能想让WCF在与asp.net相同的上下文中运行...试试这篇文章: http://msdn.microsoft.com/en-us/library/aa702682.aspx
答案 1 :(得分:1)
使用NHibernate会话的每次调用实例化。检查this article。它解释了如何创建将Session附加到当前实例上下文的属性。