11

我遇到了一個似乎也發生在其他人身上的小但奇怪的煩惱(例如,check out the revision history of SEDE)。我在Visual Studio 2010中有一個SQL Server 2008數據庫項目,可以正常工作。當我去提交/簽入源代碼管理時,我被告知我的數據庫項目的.dbmdl文件已更改爲,即使我沒有對項目進行任何更改!爲什麼我的DB項目的.dbmdl文件更改,即使我沒有改變項目?

我不確定是否通過構建我的解決方案(其中還包括ASP.NET MVC應用程序和單元測試項目)或通過簡單地打開數據庫項目來觸發更改,但這會讓人討厭,在源代碼控制中造成混亂。

是否可以阻止這些更改發生,或者無論如何擺脫.dbmdl文件?

+0

[VS數據庫項目中DBMDL文件的功能是什麼]的可能的副本(http://stackoverflow.com/questions/3634649/what-is-the-function-of-the-dbmdl-file-in -vs-database-project) – 2015-03-13 05:51:19

回答

6

我相信Visual Studio會在每次打開項目時序列化dbmdl文件。唯一可能的解決方法是保持項目開放。

+0

謝謝你的回答。如果我要改變項目的內容,這些改變是否反映在'.dbmdl'文件中?我正在考慮忽略版本控制中的文件 - 項目是否能夠使用過時的'.dbmdl'正常運行? – 2010-08-16 00:41:13

+0

我不能肯定地說,但我不願意冒險使用過時的文件。 – 2010-08-16 00:59:19

+9

根據http://stackoverflow.com/questions/3634649/what-is-the-function-of-the-dbmdl-file-in-vs-database-project/3766902#3766902,你的dbmdl文件不應該被檢查進入回購,並且永遠不會過時。 – 2010-10-27 19:27:21

18

如果你刪除.dbml文件,它會被重建而沒有錯誤或警告,所以我認爲它只是一個引用,intellisense等的緩存文件。我將它從源代碼管理中排除。

4

查看相關問題here。 .dbmdl文件對於每個用戶是唯一的(以及某種緩存,如上所述),所以正確的解決方案實際上是將其從源代碼控制中排除。

相關問題