4

我有一个 Web 应用程序和一个控制台应用程序访问数据库。db 有 2 个表(A、B),其中一个(A)特定于 Web 应用程序。在编写数据访问层时,最好的方法是什么?从技术上讲,数据访问层应该提供对所有可访问数据的访问。这样做时,如果我们有单一访问层,则与 A 交互的方法会暴露给控制台应用程序。在同一个数据库中为 2 个表创建 2 个访问层是否有意义?有什么好的方法吗?

4

1 回答 1

1

我个人会将数据访问层单独放在一个类和 1 个(或许多中间类)中,以保存将由数据访问层进行对话/填充的业务实体。然后,控制台和 Web 应用程序与业务实体层对话。

例如:

数据访问层

保存有关数据库、执行存储过程、函数和查询的方法的所有连接信息。这堂课将与Table A and Table B

控制台 1 实体

这将包含使用数据访问层实例来检索适当信息的方法/属性。IE

public List<string> GetTableAContents() {
   var retVal = Data.RunStoredProcedure("sp_Table1Contents);
   return retVal;
}

控制台应用程序

Console1Entity ce = new ConsoleEntity();
var contents = ce.GetTableAContents();

然后,您将根据与该应用程序相关的内容创建一个新的 WebApplication 实体类。这将提供一个三层架构。

于 2012-05-31T22:32:45.553 回答