将数据对象从数据访问层返回到接口的最佳实践是什么?
目前,我有一个与数据库通信并将DataTable返回给业务层的层,然后业务层将业务对象实例化并返回到接口。这不是可悲或糟糕的做法吗?
我的问题是:
- 从 DAL 返回数据对象的最佳方式是什么?
- 如果 DAL 不应该返回数据对象,那么我如何将数据获取到 DataBinding 的接口?
这不是问题,而是最佳实践问题。
提前谢谢大家
将数据对象从数据访问层返回到接口的最佳实践是什么?
目前,我有一个与数据库通信并将DataTable返回给业务层的层,然后业务层将业务对象实例化并返回到接口。这不是可悲或糟糕的做法吗?
我的问题是:
- 从 DAL 返回数据对象的最佳方式是什么?
- 如果 DAL 不应该返回数据对象,那么我如何将数据获取到 DataBinding 的接口?
这不是问题,而是最佳实践问题。
提前谢谢大家
我不确定 DAL不应该返回数据对象 - 有很多个人偏好,这取决于应用程序规模等因素。在我构建的大多数(小型)应用程序中,我在 DAL 中使用数据读取器,而不是填充和传递数据表。DAL 使用数据读取器填充业务对象,然后将其作为集合返回给服务层。
在表并不总是等同于业务对象的更复杂的场景中,我使用数据读取器来填充作为收集到服务层。服务层从一种或多种类型的 DTO 构造业务对象。
我并不是说这是一个明确的答案(“最佳实践”问题的问题!),但希望我的经验可以提供一个见解(做什么或不做什么是有争议的!)。我很想看看其他人对此有何贡献。我想您可能会得到的一个答案是调查 ORM 的使用!