Я хотел бы определить символ компиляции, например PROFILE, только когда я профилирую проект C # в Visual Studio. В обычной отладочной или выпускной сборке он не должен определяться.
Таким образом, код между #if и #endif компилируется только при профилировании.
#if PROFILE
DataCollection.StartProfile(ProfileLevel.Process, DataCollection.CurrentId);
#endif
Это должна быть проверка во время компиляции, а не во время выполнения. Причина в том, что у некоторых из нашей команды нет профилировщика на своих ПК (не включенных в VS 2012 Standard), и мы хотели бы, чтобы код компилировался в любой системе без изменений.