2010-11-22 38 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存儲庫。