4

我有一個開源項目,主要是使用MonoDevelop開發的。我去Visual Studio 2010測試它,一切正常。然後,我開始在Visual Studio 2012中測試它,並對我的項目和解決方案進行了「靜默」遷移。如何確定Visual Studio 2012是否需要「遷移」Visual Studio 2010項目?

與Visual Studio 2010不同,它沒有顯示有關所需遷移的任何警告。相反,它只是做了遷移併發布了遷移報告。它也重置我的項目使用.Net 2.0,之前它被設置爲使用4.0 ..(易於更改,但仍然)。遷移完成後,它在Visual Studio 2010中正常工作,不會嘗試遷移。

但是,我的問題是什麼決定它甚至需要做一個遷移?在我的工作中,我們有一個Visual Studio 2010項目,在Visual Studio 2012中完美地工作,沒有任何遷移(之後項目文件甚至未被標記爲已修改)。這裏有什麼區別?

回答

3

至少,VS2012將與這樣的線路更新您的解決方案文件:

Microsoft Visual Studio Solution File, Format Version 12.00 
# Visual Studio 2012 

至於你的解決方案/項目的剩餘部分,得到什麼「遷移」取決於許多因素 - 如果你有VS2010的SP1,那麼你將在兩個版本的VS之間有更好的可互操作性。數據庫項目(.dbproj文件變爲.sqlproj)是最大的突出特點,常規類庫在任一版本中都應打開。

下面是一個比較全面的MSDN博客文章討論這個問題:Visual Studio 2012 New Features: Compatibility (aka Project Round-Tripping)

+0

所以格式12的Visual Studio 2012和11是在2010年(不SP1)?我當前的解決方案文件格式爲11,爲什麼我要問 – Earlz

+0

@Earlz VS2010在其標識符(包括SP1)中使用「格式版本11.00」,這在使用VS2012的測試版或RC版時進行了更新。請注意,這些版本與年份無關 - 即使它們很接近。 – slugster

+0

我發現解決方案文件格式僅在您需要重新保存解決方案文件(如添加或移除項目)的解決方案時纔會更改。否則解決方案文件似乎停留在2010版本 –

相關問題