У меня есть строка в коде vb:
#if Not Debug
который я должен преобразовать, а я не вижу его в C #?
Есть ли что-то эквивалентное или есть какое-то обходное решение?
Вам нужно будет использовать:
#if !DEBUG
// Your code here
#endif
Или, если ваш символ действительно Debug
#if !Debug
// Your code here
#endif
Из документации вы можете эффективно рассматривать DEBUG
как логическое значение. Таким образом, вы можете проводить сложные тесты, например:
#if !DEBUG || (DEBUG && SOMETHING)
Чтобы вы знали, что здесь происходит, #if
это выражение предварительной обработки и DEBUG
символ условной компиляции. Вот статья MSDN для более подробного объяснения.
По умолчанию в конфигурации отладки Visual Studio проверяет параметр « Определить константу отладки » в свойствах сборки проекта. Это касается как C #, так и VB.NET. Если вы хотите сходить с ума, вы можете определить новые конфигурации сборки и определить свои собственные символы условной компиляции. Типичный пример, когда вы это видите:
#if DEBUG
//Write to the console
#else
//write to a file
#endif
На всякий случай, если это поможет кому-то другому, вот мой ответ.
Это не сработает:
#if !DEBUG
// My stuff here
#endif
Но это сработало:
#if (DEBUG == false)
// My stuff here
#endif
Я думаю что-то вроде сработает
источник
#if
операторов. Это можно написать#if DEBUG
источник