2010-11-22 37 views
0

我一直在研究类似于SQL MDS的ASP.NET MVC 2应用程序。我们称之为ADMIN应用程序的应用程序是为了让实施者设置非交易客户数据以将其带入船上。解决方案从ASP.NET MVC 2更改为?

该应用程序的目标是在单个环境UAT/LIVE/QA等SQL DB。简而言之,应用程序与数据库一起部署。

新的要求是 - 应用应该针对多个数据库。换句话说,键入的客户数据应该随后进入LIVE环境,然后转移到UAT &。这将确保客户数据不必多次被锁定。这项新要求让我猝不及防。

我不能去单个站点定位多个数据库因为环境是分段的,并且不允许跨环境网络访问。这是公平的。

我在想的另一种方法是将entitties objectgraph作为一个包(因为我使用LINQ2SQL)导出到使用serialize/deserialize的下一个环境中。不过恐怕我可能遇到ID和参照完整性问题。有没有人试过这个?

由于我使用DI/IoC所以体系结构松散耦合。我可以尝试什么其他解决方案,而不需要太多的开发工作?我是否应该采用Winform方法并强制要求所有SQL服务器都具有网络访问权限?

任何想法将是非常赞赏... Daks的

回答

0

是否所有数据库都具有相同的模式?如果是这样,你不能简单地改变连接字符串,并连接到你需要的任何数据库?

+0

所有DB都共享一个共同的模式。然而,我不能用单个站点将多个数据库分散在不同的环境中(QA/UAT/LIVE)。所有这些都是分开的,并且不允许跨环境网络访问。 – dakuji 2010-11-23 10:52:56

0

如果我正确理解你的问题,我觉得你可以考虑使用ETL每当它被更新传输不同数据库之间的数据。犀牛ETL是移动数据的好工具。

Here是一个关于使用的链接,here是一个链接到git存储库。