解決方案下的項目往往需要讓生成的程序集版本號統一,最簡單的方式當然是打開每一個項目下的 AssemblyInfo.cs文件修改,或者使用項目屬性修改。最近,發現還有一種更簡單的方式,下面仔細介 紹它。
步驟1、創建一個SolutionInfo.cs的文件,放到解決方案下。內容類似為:
using System.Reflection; using System.Runtime.CompilerServices; using System.Runtime.InteropServices; [assembly: AssemblyCompany("ProJKY")] [assembly: AssemblyProduct("ProJKY Architecture")] [assembly: AssemblyCopyright("Copyright ? ProJKY 2013")] // 這裡修改你要統一的版本號,注意文件版本號與程序集版本號一致 [assembly: AssemblyVersion("2.5.0.6")] [assembly: AssemblyFileVersion("2.5.0.6")]
步驟2、將SolutionInfo.cs添加到解決方案中,注意不是任何一個項目下。直接在解決方案資源管 理器中,選中解決方案,右鍵,添加現有項,將SolutionInfo.cs添加進來即可。
步驟3、修改各個項目下的AssemblyInfo.cs,刪除其中的版本號等特性信息,在我的例子裡面,就 是刪除下面的幾行代碼:
[assembly: AssemblyCompany("ProJKY")] [assembly: AssemblyProduct("ProJKY Architecture")] [assembly: AssemblyCopyright("Copyright ? ProJKY 2013")] [assembly: AssemblyVersion("1.0.0.0")] [assembly: AssemblyFileVersion("1.0.0.0")]
步驟4、在每個項目上添加已有項,浏覽到剛才的SolutionInfo.cs,不要雙擊,這樣要使用特殊的添 加方式。需要在添加窗體的添加下拉列表裡選擇添加為鏈接。
下面,就可以Build一下,可以看到生成的項目程序集版本號和SolutionInfo.cs設置的一致。
它的原理在於,即使添加的鏈接文件,也會隨項目一起編譯,所以對最終生成的程序集版本號起作 用。又因為,SolutionInfo.cs只有一個,所以修改起來方便。對於其它類似要共享源代碼文件的情況 也適用。
查看本欄目