條件編譯符號與公佈

weixin_34162629發表於2017-06-22

一、條件編譯符號

條件編譯的作用就是能夠在程式碼中設定一些使用場景。最常見的就是假如是DEBUG,就如何如何。否則又如何如何。

假設要加入一些除了DEBUG、TRACE之類的場景,條件,能夠自己定義。

定義的方法是:右擊專案。屬性,在生成頁籤中,輸入自己定義的條件編譯符號。

好比說。如今我們做的專案早早就把登入模組放上去了,搞到常常登入,煩死了。浪費不少時間。

那麼,我能夠設定一個條件編譯符號,比方說NoLogin,然後在程式碼裡:

#if NoLogin
                    //偽造一個登入資訊,不登入
                    。。

#else //乖乖地登入 。。

#endif

這樣僅僅要我這個NoLogin條件編譯符號成立。存在,則可不必登入矣。

條件編譯符號儲存在專案檔案中。

二、公佈
WEB專案裡的web.config假設展開,將會發現存在著 web.debug.config、web.release.config。這就是公佈的時候,因應不同的編譯選項的。比方說。你選了“Release”。那麼系統將會用web.release.config裡的配置覆蓋web.config裡的。公佈出來的web.config將是覆蓋後的版本號。
這裡寫圖片描寫敘述

注意這些供公佈替換的config,有一些格式要求,只是裡面有具體的說明。照寫可也。

假設除了debug,release,還有其它公佈要求的話。也能夠自行加入。

方法是:
點VS選單條的生成,選配置管理器。新建就可以。

比方說,我新建了一個名為 NoLogin 的配置方案。那麼系統會自己主動為你加入一個web.NoLogin.config
這裡寫圖片描寫敘述

三、條件編譯符 與 公佈的關係

似乎沒有啥關係。條件編譯符 在 web.config 中是不支援的。條件編譯符僅僅對程式碼起作。只是看上去,選debug、release方案公佈出來的程式碼。自己定義的那些條件編譯符都不起作用了。可能debug,release是系統保留方案,會自己主動清除自己定義的條件編譯符。

算了,不去試了。

相關文章