0

我从 MSDN 阅读了以下文章:http: //msdn.microsoft.com/en-us/library/aa581779

它讨论了创建数据层、业务逻辑层和表示层以及具有 getProductsDAL()、getProductsBLL() 等命名约定,甚至将它们分离到类库中。

我的问题是:如果不使用 .NET 数据集,开发人员是否会遵循这种方法,即如果您自己执行所有逻辑,例如有一个名为 getProducts 的函数,该函数使用连接对象连接到数据库,然后使用 SQLDataReader 循环遍历结果集并显示页面上的结果。我正在考虑将这样的功能拆分成层。

4

1 回答 1

2

如果您打算按照自己的方式进行操作:
您的数据层将包含打开连接、执行查询/存储过程并返回数据集或数据表的方法。该层不接收上层的连接信息,只返回每个方法的查询结果。连接在这个级别被实例化。

您的业​​务逻辑层包含每个调用一个或多个数据层方法的方法。示例:添加新用户也意味着为该用户设置权限,因此 DL.InsertUser(params...) 和 DL.SetPermissions(int Userid, List permissions) 由 BL.AddNewUser(params...) 调用。此 BL 方法还可以调用另一个 DL 方法,该方法获取默认权限列表以分配新用户

您的 UI 层将使用所有适当的新用户详细信息调用 BL.AddNewUser(params...)

于 2012-07-19T11:34:50.063 回答