【问题标题】:How to use F# SqlDataConnection with databases that are slightly different?如何将 F# SqlDataConnection 与略有不同的数据库一起使用?
【发布时间】:2014-05-07 14:54:08
【问题描述】:

所以我有一个连接到 MsSQL 数据库的 F# 项目。在开发环境中,数据库结构与 prod 中的结构有点不同(有些表有额外的列,没有重命名或删除或类型​​更改)。因此,当我编译代码时,它引用了 dev db,一切正常。但是,当我部署代码并更新连接字符串以指向产品数据库时,代码失败并抱怨表中缺少字段。肯定有一种模式可以避免这种情况吗?任何指针或建议将不胜感激......

【问题讨论】:

    标签: .net database architecture data-access-layer


    【解决方案1】:

    不,没有“简单”的解决方案。这是多环境系统的常见瘟疫。

    有部分解决方案,但我仍然希望看到一个令人满意的解决方案。
    例如:

    1) 为不同的数据库版本保留不同的代码分支。

    2) 在数据访问层之上有一个“适配器”层来处理(模拟)更新的数据模型和旧数据库实现之间的差异。

    【讨论】:

    • 我将此标记为正确答案,因为我认为确实没有解决此问题的好方法 :(。但是,如果您使用 HBML 文件作为 F# 中的类型提供程序数据源,那么你可以捏造一些东西。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-06-27
    • 2017-07-12
    • 2013-10-22
    • 2013-12-11
    • 2020-06-12
    • 1970-01-01
    • 2020-09-13
    相关资源
    最近更新 更多