【问题标题】:DAL: Is it ok to incapsulate several data sources access in one module?DAL:可以将多个数据源访问封装在一个模块中吗?
【发布时间】:2011-04-10 16:17:01
【问题描述】:

我开发的应用程序需要多个数据源(2 个 RDBMS 和一个文件存储)才能运行。我将使用 DAL 库和业务逻辑层封装数据源。

您会亲自创建多个 DAL 库(每个数据源每个)并在业务逻辑层中协作多个 DAL 实例,还是创建整体 DAL 库来封装应用程序使用的所有数据源?

【问题讨论】:

    标签: language-agnostic architecture data-access-layer


    【解决方案1】:

    如果没有更多信息很难判断,但如果每个数据源都有很多方法,我倾向于创建单独的 DAL。

    然后其他应用程序(仅对其中一个数据源感兴趣)可能会重新使用其中一个 DAL - 它们不必处理不相关的方法/数据源。

    更重要的是,确保您 inject 您的 DAL 进入业务逻辑层,这样您就可以在不实际使用“真实”数据源的情况下测试业务逻辑层。

    【讨论】:

    • 完全同意。我将使用密切处理文件数据的第一个 RDBMS-DAL 程序集将文件存储层次结构封装在一个 DAL 中。但是要创建第二个 RDBMS-DAL 作为单独的程序集。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-09-03
    • 2021-06-12
    • 2020-05-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多