3

将数据对象从数据访问层返回到接口的最佳实践是什么?

目前,我有一个与数据库通信并将DataTable返回给业务层的层,然后业务层将业务对象实例化并返回到接口。这不是可悲或糟糕的做法吗?

我的问题是:

- 从 DAL 返回数据对象的最佳方式是什么?

- 如果 DAL 不应该返回数据对象,那么我如何将数据获取到 DataBinding 的接口?

这不是问题,而是最佳实践问题。

提前谢谢大家

4

2 回答 2

2

你看过存储库模式吗?

http://msdn.microsoft.com/en-us/library/ff649690.aspx

http://martinfowler.com/eaaCatalog/repository.html

于 2013-05-15T22:55:04.977 回答
0

我不确定 DAL不应该返回数据对象 - 有很多个人偏好,这取决于应用程序规模等因素。在我构建的大多数(小型)应用程序中,我在 DAL 中使用数据读取器,而不是填充和传递数据表。DAL 使用数据读取器填充业务对象,然后将其作为集合返回给服务层。

在表并不总是等同于业务对象的更复杂的场景中,我使用数据读取器来填充作为收集到服务层。服务层从一种或多种类型的 DTO 构造业务对象。

我并不是说这是一个明确的答案(“最佳实践”问题的问题!),但希望我的经验可以提供一个见解(做什么或不做什么是有争议的!)。我很想看看其他人对此有何贡献。我想您可能会得到的一个答案是调查 ORM 的使用!

于 2013-05-15T22:57:43.170 回答