Мне было интересно, что думают люди о CA1806 (DoNotIgnoreMethodResults) Предупреждение статического анализа кода при использовании FxCop.
У меня есть несколько случаев, когда я использую Int32.TryParse для извлечения внутренней информации о конфигурации, которая была сохранена в файле. Я получаю много кода, который выглядит следующим образом:
Int32.TryParse(someString, NumberStyles.Integer, CultureInfo.InvariantCulture, out intResult);
MSDN говорит, что по умолчанию intResult равен нулю, если что-то не получается, и это именно то, что я хочу.
К сожалению, этот код вызовет CA1806 при выполнении статического анализа кода. Похоже, много избыточного / бесполезного кода для исправления ошибок примерно так:
bool success = Int32.TryParse(someString, NumberStyles.Integer, CultureInfo.InvariantCulture, out intResult);
if (!success)
{
intResult= 0;
}
Должен ли я подавить это сообщение или откусить пулю и добавить всю эту избыточную проверку ошибок? Или, может быть, у кого-то есть лучшая идея для такого случая?
Спасибо!