【发布时间】:2019-05-18 14:57:57
【问题描述】:
我的 C# 应用程序需要一些帮助。
现在它工作得很好,但客户的新要求之一是在程序启动之前使用任何可选择的用户模式来实现底层数据库(MS SQL 或 Oracle)。
在我的应用程序内部,大约有 150 个 DataCommand 对象。
所以我需要在应用程序执行之前捕获应用程序中的每个 SQL 表达式并更改目标对象的位置。例如改变:
SELECT APPLICATION_NAME FROM **MY_SCHEMA**.APPLICATIONS
到
SELECT APPLICATION_NAME FROM **NEW_SCHEMA**.APPLICATIONS
正如我看到的这个问题的解决方案 - 将一些代码注入我的应用程序内部的每个IDbCommand,但无法想象开始点。
请有任何建议。
【问题讨论】:
-
您可以将其作为整个连接字符串或架构作为 appsetting 包含在 app.config 中。
-
这是解决方案的一部分。但是如何在不触及所有人的情况下在所有 DataCommand 对象中进行替换?