我最近開始一個新工作,一個非常有趣的項目(C#,.NET 4,Linq,VS 2010和SQL Server)。我立即得到了一個非常令人興奮的挑戰:我必須實現一個新工具或者在程序啓動時集成邏輯,或者其他什麼,但是必須要做的是:客戶擁有以前的應用程序和數據庫(充滿了他們的特定數據)。現在,新版本已準備就緒,客戶可以獲得更新。同時,我們對數據庫進行了一些修改(新建表,列,可能刪除了一箇舊列或其他)。我在Linq和SQL數據庫中都很新,我的第一個解決方案可以是:我檢查應用程序/數據庫版本並逐步比較所有表,列,鍵,約束等實施所有更改(所有這些新信息我有我的dbml和我從現有的數據庫中提出的舊問題)。每當版本改變時我都會這樣做。但不知怎的,我覺得,這不是一個聰明的解決方案,所以我尋找這個問題的一般解決方案。是否可以從dbml文件更新舊的數據庫? (C#,.Net 4,Linq,SQL Server)
有沒有辦法從dbml文件更新客戶數據庫?創建一個新的不是一個問題(使用DataContext的CreateDatabase),有沒有更新/更改數據庫方法?我想我不是唯一一個尋找這樣的解決方案的人(我在互聯網上找不到任何東西 - 或者我查找了不好的關鍵字)。你是如何解決這個問題的?我也看看外部工具,但首先用C#,Linq或類似的解決方案。 對於任何想法提前謝謝!
最好的問候, 埃米爾
擁有一個完美的參考數據庫作爲基礎來使用可以永遠是一個頭疼的問題。我們只保留最後一個版本作爲參考,並且始終在版本之間製作腳本。這樣我們至少可以在最新版本之前進行版本升級。但這可能不適用於所有情況。 – TheCodeMonk 2010-05-05 14:27:14