C #: создать пользовательское предупреждение в Visual Studio, если в исходном коде используется определенный метод - PullRequest
3 голосов
/ 09 июня 2009

Есть ли способ вывести предупреждение в отладчике, если в коде используется определенный метод? У меня есть пара деликатных методов, которые следует использовать только в исключительных случаях, поэтому я хотел бы получить некоторый вывод предупреждений, если они действительно вызываются в любом месте проекта.

Возможно ли это?

Ответы [ 2 ]

14 голосов
/ 09 июня 2009

Вам следует рассмотреть возможность использования атрибута Obsolete . Это позволяет вам пометить метод, который не должен использоваться. Он принимает два необязательных параметра: сообщение и флаг, указывающий, должен ли компилятор выйти из строя или выдать предупреждение.

0 голосов
/ 09 июня 2009

Вы можете использовать метод Debugger.WriteLine для просмотра сообщений в отладчике

Debugger.WriteLine("Don't use this method");

Это легко пропустить или проигнорировать. Более агрессивным способом предотвращения этого может быть утверждение.

Debugger.Fail("Are you sure you want to use this method?");

Еще один способ добиться этого - пометить метод как устаревший. Это приведет к предупреждению во время компиляции против времени отладки. Вы упомянули, что есть несколько мест, где это может быть правильно использовано. В этих случаях вы можете отменить предупреждение об устаревании с помощью прагмы. Это означает, что только новые применения метода вызовут предупреждение о времени компиляции, которое звучит так, как вы хотите.

...