如何將.sln專案檔提升至2017版本
最近遇到客戶提出了這個要求,順便參考官方文件的說法,整理一下如何提升專案檔版本?
參考網站:https://docs.microsoft.com/zh-tw/visualstudio/extensibility/internals/solution-dot-sln-file?view=vs-2017
先不考慮專案內容是否會有衝突的問題,單純紀錄該如何修改.sln版本。
依照官網文件的說法,基本上相當簡單,只要修改檔案的表頭即可。
下列附上每個不同VS版本的.sln表頭。
Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio Version 16
VisualStudioVersion = 16.0.28701.123
MinimumVisualStudioVersion = 10.0.40219.1
Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio Version 16
VisualStudioVersion = 16.0.28701.123
MinimumVisualStudioVersion = 10.0.40219.1
Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio 15
VisualStudioVersion = 15.0.26730.15
MinimumVisualStudioVersion = 10.0.40219.1
Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio 2013
VisualStudioVersion = 12.0.40629.0
MinimumVisualStudioVersion = 10.0.40219.1
VS2022與VS2019的設定表頭設定基本是相同的,關於這個我暫時沒有找到更詳細的說法,因為我最近修改的版本為VS2013 => VS2017,經過修正之後,客戶那邊確認可以使用。
將官網針對表頭的說明複製上來,若有侵權疑慮請先告知,謝謝!
Microsoft Visual Studio Solution File, Format Version 12.00
定義檔案格式版本的標準標頭。
# Visual Studio 15
Visual Studio 的主要版本, (最近) 儲存此方案檔。 這項資訊會控制解決方案圖示中的版本號碼。
VisualStudioVersion = 15.0.26730.15
Visual Studio 的完整版本, (最近) 儲存的方案檔。 如果解決方案檔是由具有相同主要版本的較新版本 Visual Studio 所儲存,則不會更新此值,以便減少解決方案檔中的流失情形。
MinimumVisualStudioVersion = 10.0.40219.1
可以開啟此方案檔之 Visual Studio 的最小 () 版本。
也就是說,基本上只要置換中間兩行就能將.sln版本更換。
# Visual Studio 15
VisualStudioVersion = 15.0.26730.15
查詢此問題時,還有看到可以將專案拷貝各種不同版本的.sln檔案,方便使用不同的VS版本開啟的說法。
通常專案檔版本還是需要配合客戶需求,所以更改版本是有機會發生的問題,特別記錄下來。