繁体   English   中英

如何从dal填写业务object

[英]How to fill business object from dal

我在 DAL 中返回 DataTable。 我有一个名为 Customer 的业务对象。 我应该在哪里填写这个 object? 应该在 DAL 中完成吗? 还是在我的前端应用程序中? 还是在哪里? 有点迷茫。

如果可能,您希望避免在 DAL 中返回DataTable ,而是返回正确填充的业务 object。 有几个工具可以帮助您解决这个问题,例如 LINQ 到 SQL、Entity Framework 或(我目前最喜欢的) Dapper.NET (由该站点使用)。 我最喜欢 Dapper,因为它是轻量级的,并且与我经常使用的 Data Repository 模式配合得很好。

您可以有一个返回 DataTables 的 Base DAL。 然后有一个 Upper DAL,它执行实体之间的转换,(这是我倾向于使用的)

你真的不应该在你的 UI 层中引用 DataTables。

我以前见过的中途之家是在实际业务 object 本身的方法中进行“对象填充”,但这不允许您如此轻松地切换 DAL。

当像这样跨域时,数据的表示在每个域中都不同,您需要一个集成层来处理两种表示之间的映射 不过,大多数 ORM 工具会自动为您进行映射。

但是要坚持您的示例,您可以使用一层映射器来执行此操作。 然后CustomerMapper将 map 从DataTableCustomer ,有效地桥接两个域表示。

它应该在 BL 或业务逻辑层中完成。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM