使用带有 Fluent nHibernate 的 nHibernate 包装器
是否可以使用像这样的包装器和流畅的配置?
http://jeffreypalermo.com /blog/use-this-nhibernate-wrapper-to-keep-your-repository-classes-simple/
如果是这样,我将在哪里添加流畅的配置?
另外,这是否适合在 ASP.NET 和 Windows 应用程序中使用? 我打算使用存储库模式,用它来创建我的 nHibernate 会话?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
在
SessionBuilder
的GetConfiguration
方法中,而不是在您链接的页面中显示,只需执行如下操作:
关于处理上下文的进一步查询,您可以两个继承
ISessionBuilder
的类,例如AspSessionBuilder
和WinAppSessionBuilder
,并为当前项目注入合适的类。您应该使用 Jamie Ide 以及 作为此问题的答案发布来处理上下文,而不是使用HttpContext
。您只需将此行修改为诸如
"call"
或"thread_static"
之类的内容。请参阅 NHibernate Forge wiki 上的此页面,了解不同上下文会话类型的详细说明:上下文会话@ NHibernate Forge
In the
GetConfiguration
method in yourSessionBuilder
, instead of theshown in the page you linked, simply do something like this:
Regarding the further inquiry about handling contexts, you'd have two classes inheriting
ISessionBuilder
, e.g.AspSessionBuilder
andWinAppSessionBuilder
, and inject the appropriate one for the current project. You should use the strategy outlined by Jamie Ide also posted as an answer to this question to handle contexts instead of usingHttpContext
. You just simply have to modify this line:to something like
"call"
or"thread_static"
. See this page at the NHibernate Forge wiki for a good explanation of the different contextual session types:Contextual Sessions @ NHibernate Forge
是的,您可以使用它,但最好使用 NHibernate 的内置上下文会话管理,而不是自己处理。请参阅我对这个问题的回答。除了更少的编码之外,它还提供了除了 HttpContext 之外的另外两个选项,Call 和 ThreadStatic。
Yes you can use it but it's better to use NHibernate's built-in contextual session management rather than handle it yourself. See my answer to this question. In addition to less coding, it offers two other options in addition to HttpContext, Call and ThreadStatic.