【问题标题】:ASP.NET , LLBLGen and Spring.Net with Service Layer带有服务层的 ASP.NET、LLBLGen 和 Spring.Net
【发布时间】:2011-01-18 08:11:26
【问题描述】:

所以我正在考虑在这个 asp.net 项目上使用 LLBLGen Pro 和 Spring.Net,使用服务层将业务逻辑与数据存储分离。我也在考虑在 UI 层使用 PONOS,现在我的问题是:

我应该将丰富的 LLBLGen 实体对象映射到数据层还是服务层中的 Ponos?如果我在数据层中执行此操作,那么我会在服务层中丢失它们所有的丰富功能。还是我应该跳过到 Ponos 的映射并一直使用 LLBLGen 实体?如果晚一点就更难测试了吧?

有人可以告诉我这两种方法的优缺点吗?

谢谢

【问题讨论】:

    标签: asp.net architecture spring.net llblgenpro


    【解决方案1】:

    使用不带映射的 LLBLGen 实体的好处是,您可以直接从您的数据库模式(甚至在 LLBL 3.x 中没有数据库模式)生成实体,因此您可以拥有一个非常有用的实体模型分钟。缺点是你的实体继承自 LLBL 框架类,这使得它们更难用行为/业务逻辑来丰富。如果您通常将业务逻辑设计为一组服务,这不会造成问题。

    在这种情况下,我不认为测试是一个问题,因为我通常将实体视为“贫血”数据对象,并且我通常不会模拟此类对象(没有真正的理由这样做)。

    映射到 POCO 的好处是您可以完全控制您的域/实体/DTO 对象的设计,并且它们可以随心所欲地丰富或贫乏。缺点是您必须设计和编码 POCO 类和映射,并且(如您所说)您将失去一些功能,例如内置于 LLBL 实体中的更改跟踪。

    我个人选择使用生成的实体对象,除非我有充分的理由不这样做。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-12-29
      • 1970-01-01
      • 2011-01-09
      • 1970-01-01
      • 1970-01-01
      • 2011-05-01
      • 2017-01-07
      • 1970-01-01
      相关资源
      最近更新 更多