【发布时间】:2018-02-06 11:58:06
【问题描述】:
我有一个 Web 应用程序,我们在其中从客户那里获取数据并对其进行处理,例如:保存客户信息、与客户一起管理所有项目、管理报告等(我认为不需要有关应用程序的更多信息)。我使用 mysql(remote server) 每 10 秒从应用程序中获取数据,然后使用 sql server 2008(local server) 存储和获取所有本地数据。
注意:客户不与此应用程序交互。它仅用于 当地员工。
现在,问题是此应用程序适用于一个国家/地区,即remote server 仅具有来自该国家/地区的数据。现在我们正在新的国家推广我们的业务。所以remote server 会有所不同,也会在sql server 中创建不同的本地数据库。
但是除了数据库数据之外,两者的应用程序代码都是相同的。因此,我们正在考虑使用带有link 或button 的相同应用程序在它们之间切换。例如,我们会让link 说switch to another country site。单击此链接将重新加载所有应用程序,并将从另一个 remote server 获取数据,还将使用不同的本地 database。
我不确定如何实现这一点。我应该在我的global.asax 文件中更改connection strings 在某些条件下还是在.config file 中更改,或者有任何其他好的方法来做到这一点。
如果您需要更多信息,请告诉我。任何帮助将不胜感激。提前谢谢..!!
【问题讨论】:
-
没有一种解决方案。它可以简单到在应用程序的所有 URL 中添加带有 countryname 的额外查询字符串参数,并使用它来确定要使用的数据库。它也可能像代码、构建过程、部署策略等方面的变化一样复杂。应用程序的设计和开发方式也增加了复杂性。您需要分享更多相关信息,但我不确定您的问题是否有最适合您的应用的完美答案。
-
SO 不适用于像这个问题这样的策略的讨论。还有一些其他站点(也在 StackExchange 世界中)更适合。如果您的策略很明确并且在实施该策略时遇到问题,您可以回到这里
-
@Chetan 感谢您的回复,我不确定要共享哪个代码作为它的大型应用程序。我唯一可以分享的是,如果这就是您所要求的,我正在将连接字符串添加到 global.asax 文件中的数据库帮助程序
-
@Sir Rufo 然后我可以将问题改为如何实施这种方法。适合吗?
-
是的,在您自己尝试并卡在特定点之后
标签: c# mysql asp.net sql-server