Строки ниже конфликтуют друг с другом:
Есть ли способ проверить, был ли исполняемый файл, в котором работает dll,
скомпилирован с отладкой или выпуском? Другими словами, хотя мой нюгет
пакет был скомпилирован с выпуском, я хочу запустить другой код
Обычно можно сделать что-то похожее на то, что вам нужно, используя директивы препроцессора . Это позволит вашей программе выполнять различные пути в соответствии, например, с именем конфигурации, используемой для построения проекта:
#if debug
//Log
#endif
Однако вы, похоже, стремитесь к чему-то другому. Похоже, вы хотите изменить поведение, но сохраняете одну и ту же сборку (релиз в обоих случаях).
Для этого может быть проще иметь флаг, скажем verbose
, который по умолчанию равен false
, и когда он включен, он регистрирует дополнительную информацию. Это позволит вам сохранить тот же механизм сборки, но при этом будет иметь возможность регистрировать больше информации соответствующим образом.
Редактировать: Согласно вашим комментариям, я имею в виду что-то вроде этого:
В вашем коде, который вызывает nuget, у вас будет что-то вроде этого:
#if DEBUG
var x = new NugetInstance(verbose:true...);
#else
var x = new NugetInstance(verbose:false...);
#endif