I know that I can use preprocessor directives to check for Debug/Release by doing this:
#if DEBUG //debug mode #elif //release mode #endif
but what about checking for other configurations, like Test. In VB you can do this:
#If CONFIG = "Release" Then 'Release mode #ElseIf CONFIG = "Test" Then 'Test mode #ElseIf CONFIG = "Debug" Then 'Debug mode #End If
So, my question is in C#, how can I check for Test mode? I have some code that I want to execute if I'm in Debug AND Test, but not in Release mode, so specifically, I need a way to check for not being in Release mode. In VB I would do this:
#If Not CONFIG = "Release" Then 'Do something here for every configuration that is not Release #End If
It's the same as for DEBUG, assuming that you've defined a build configuration that lists TEST
in the "Conditional compilation symbols" text box (under project properties > Build tab; this is a space-delimited list).
For code that you only want to run in the TEST build configuration:
#if TEST // ... #endif
And for code you don't want to run in the TEST build configuration, you can either #else
the above, or do this:
#if !TEST // ... #endif
Right click on the Project [Project name] name you want to use the custom precompiler directive.
Go to the properties item and then to the build tab.
then you need to add your custom directive there in the textbox. E.g i have added 'Local' as my custom directive see image below
Now you can can use the new compiler directive as shown below in your (in C#)
#if **Local** //TODO:Add your c# code here #endif
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With