Я хотел бы добавить код C # «только отладка», который запускается только в том случае, если его запрашивает отладчик. В C ++ я делал что-то похожее на следующее:
void foo()
{
// ...
#ifdef DEBUG
static bool s_bDoDebugOnlyCode = false;
if (s_bDoDebugOnlyCode)
{
// Debug only code here gets executed when the person debugging
// manually sets the bool above to true. It then stays for the rest
// of the session until they set it to false.
}
#endif
// ...
}
Я не могу сделать то же самое в C #, поскольку нет локальной статики.
Вопрос : Как лучше всего добиться этого на C #?
- Следует ли использовать статическое поле частного класса с директивами препроцессора C # (
#if/#endif DEBUG
)? - Должен ли я использовать атрибут Conditional (для хранения кода), а затем статическое поле частного класса ( не окруженное директивами препроцессора C #
#if/#endif DEBUG
?). - Что-то другое?