Как прояснить, что метод может выдать исключение?

Я использовал Хвост Для Windows . Конечно, не столь изящный как использование

tail

, но затем, Вы используете Windows.;)

6
задан burnt1ce 14 August 2009 в 17:04
поделиться

3 ответа

Используйте тег в комментариях к документации вашего метода:

/// <summary>Does Foo</summary>
/// <exception cref="System.ArgumentNullException">
/// Thrown when bar is null.
/// </exception>
public void Foo(Bar bar) 
{ 

}

Одна из приятных особенностей использования Тег заключается в том, что Visual Studio будет включать эту информацию во всплывающую подсказку о методе следующим образом:

24
ответ дан 8 December 2019 в 04:09
поделиться

Во всей документации MSDN каждый метод показывает, что он может вызвать. Мне нравится эта идея, и поэтому в своих комментариях я делаю что-то вроде:

// throws: MyDangerousError, StupidProgrammerError

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

1
ответ дан 8 December 2019 в 04:09
поделиться

К сожалению, ясность - не единственная проблема. В противном случае вы можете сделать следующее:

public void Method_MayThrowException() {
  ..
}

Поскольку это нежелательно по другим причинам, комментарий, который может быть обработан intellisense, скорее всего, будет работать лучше.

Кроме того, если вы открыты для надстроек или процессов модификации, вы можете прочитать о Spec #. Или вы можете реализовать правила FxCop.

1
ответ дан 8 December 2019 в 04:09
поделиться
Другие вопросы по тегам:

Похожие вопросы: