NHibernate、Codesmith 和项目物理架构
最近我尝试了 NHibernate 的 CodeSmith 模板。 正如你们中的许多人可能观看的那样,有一个视频解释了如何使用这些模板创建 Petshop.Data。 我的问题是这种方法中正确的架构是什么? 我们是否应该有一个 BLL(或服务)层来与此 Petshop.Data 交互,或者直接在表示层中调用 ManagerFactory? 另外,我们的表示层是否应该不知道 Petshop.Data 中的业务对象,并且我们是否应该再次在 BLL 中拥有业务实体?
Recently I tried CodeSmith templates for NHibernate. As many of you might watched, there is a video explaining how to create a Petshop.Data using these templates. My question is what is the correct architecture in this approach? Should we have a BLL (or Services) layer to interact with this Petshop.Data or directly call ManagerFactory in our presentation layer? Also should our presentation layer be unaware of Business Objects in our Petshop.Data and shoud we have Business Entities in BLL again?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
请随时在我们的社区网站和我们的模板错误跟踪器。 我们认真对待所有反馈并每天进行查看。
谢谢
——布莱克·尼米斯基
Please feel free to address these issues in our community site and on our template bug tracker. We take all feedback seriously and look over it daily.
Thanks
-Blake Niemyjski
我想说的是,表示层可以知道您的业务对象,但不应该知道它们是如何从数据库填充的(但 NHibernate 无论如何都会为您处理这一点)。 如果您确实使用服务层,它会给您多一点灵活性/控制力。 我总是用一个。
I would say that a presentation layer can be aware of your Business Objects, but should not be aware of how they get populated from the database (but NHibernate takes care of that for you anyways). If you do use a Service Layer it gives you one more point of flexibility/control. I always use one.
我在 CodeSmith 上也有过类似的经历。 这是我制作的博客条目:
http:// hypertrends.com/Blog/post/2008/12/15/CodeSmith-to-create-NHibernate-Mappings-Honest-Thoughts.aspx
I have had a similar experience with CodeSmith. Here's a blog entry I made:
http://hypertrends.com/Blog/post/2008/12/15/CodeSmith-to-create-NHibernate-Mappings-Honest-Thoughts.aspx