我想不同的編譯一個項目,根據的#define定義,像這樣的常數:如何定義常量全球在C#(如DEBUG)
#define USE_COMPONENT_X
#if USE_COMPONENT_X
...
#endif
,我可以做,在C#。但是當我轉到同一個項目中的另一個文件時,這個常量沒有定義。我能否以某種方式爲所有項目定義一個常量,如DEBUG是如何定義的?
我想不同的編譯一個項目,根據的#define定義,像這樣的常數:如何定義常量全球在C#(如DEBUG)
#define USE_COMPONENT_X
#if USE_COMPONENT_X
...
#endif
,我可以做,在C#。但是當我轉到同一個項目中的另一個文件時,這個常量沒有定義。我能否以某種方式爲所有項目定義一個常量,如DEBUG是如何定義的?
您可以添加/ define編譯器開關。
將它設置在您的IDE中或使用編譯器命令行開關,即對於Mono使用-define。
希望我沒有離開主題,而不是一個「常量」可能爲常量的類型定義一個接口,然後使用衆多依賴注入框架之一來管理「常量」的定義,注入和生命週期」。
您可能想要更進一步並創建不同的項目配置,作爲標準調試和發佈項目配置的變體。生成菜單下的配置管理器可讓您完成此操作。然後,當您處於項目屬性的「構建」選項卡中時,您可以選擇各種配置並設置適用於每種配置的條件編譯常量。當您想要在條件編譯的代碼的各種排列之間來回切換時,這將爲您節省大量時間。
您也可以直接編輯csproj文件,查找屬性:DefineConstants。 – si618 2009-12-01 06:11:29
你能舉一個例子嗎?我得到「編譯器的參數無效,'...'將被忽略。」錯誤。 – 2014-03-10 13:03:24