以前都是針對設定檔依據不同環境有對應的檔案,或是安裝SlowCheetah 套件,可以將各類型
的設定檔依據組態產出對應的檔案;但若是組件(.dll)或是應用程式(.exe) 需要依據環境產生不同
的編號,可以怎麼做的呢?動手紀錄一下...
測試過後,這類型程式碼來區分的僅能透過條件式編譯來達到效果,同樣組態設定是一定要的,
先來看一下組態設定
組態的部分預設會有 Debug 與 Release ,再來新增兩組分別是 Beta 及 Stage,其中兩者都
必須以 Release 為範本建立
建立後開啟方案屬性頁,切換到「建置」功能,在條件式編譯符號加入對應參數,如下圖
比較特別的是,預設 Debug 或 Release 是不用特別設定編譯符號的,內建會自動識別
再來就是看一下 AssemblyInfo.cs 檔案該如何設計
此時先切到 Beta 組態
程式碼的部分搭配條件式編譯以及對應的參數
由以上圖片可以看出,Beta 區塊亮燈,代表此時這邊程式是有效的,產生的dll 或應用程式
也僅會包含這段程式,其他反灰的不會被納入,就不用擔心非該版本的程式碼流出
須注意條件式的寫法,如下所示,不管組合如何最後都要下 #endif
#if
#elif
#else
#endif
參考
沒有留言:
張貼留言