2012-04-03 45 views
1

背景:試圖簡化在C#中條件編譯步驟

我想要做的是定製構建過程爲基礎的一套配置,我需要在我的VS2008 IDE項目給定的時間點。

我的項目有一些條件方法,例如[Conditional(「FULLFEATURE」)]或[Conditional(「LESSFEATURE」)]只有當我在Build項目屬性中提到FULLFEATURE或LESSFEATURE條件編譯符號時才執行。

這種方法很費力,因爲每當我必須通過(VSNET IDE)編譯時,我必須根據我的要求手動添加編譯符號。

問題

有沒有辦法在那裏我可以做到這一點(維持項目的兩個不同副本的每個功能,不,我不希望這種做法)?

是否有通過配置管理的方式,其中我可以只選擇了其中一

FULLFEATURE --> Debug ---> x86 
FULLFEATURE --> Debug ---> AnyCPU 
FULLFEATURE --> Release ---> x86 
FULLFEATURE --> Release ---> AnyCPU 


LESSFEATURE --> Debug ---> x86 
LESSFEATURE--> Debug ---> AnyCPU 
LESSFEATURE--> Release ---> x86 
LESSFEATURE--> Release ---> AnyCPU 

在我需要的任何配置來構建。 我知道如果我有更多的條件編譯符號,這種方法會變得討厭。但現在,我..

任何建議最受歡迎

乾杯

+4

爲什麼不能使用配置管理器創建四個單獨的構建配置? – Steve 2012-04-03 15:55:19

+0

我之前用'MSBUILD'腳本完成了這個工作,該腳本設置條件,編譯,更改條件,編譯爲不同的輸出目錄。 – 2012-04-03 16:18:09

+0

@Boo:我知道我們可以使用MSBUILD來做到這一點,這就是我特別提到VS2008 IDE的原因 – 2012-04-03 16:58:26

回答

1

構建+配置管理器。使用標有「活動解決方案配置」的左上角組合框並選擇New...。輸入一個新名稱。 Project + Properties,Build選項卡並設置你的條件。每個配置現在都有自己的條件。

現在,您只需在工具欄上的配置選擇器之間切換配置,然後根據需要進行構建/調試。

+0

非常感謝..雖然我嘗試過,但我認爲更改Build配置會覆蓋舊的配置。真是愚蠢的我! – 2012-04-03 17:30:42