Как правильно реализовать IDataRecord, если IndexOutOfRangeException является зарезервированным типом исключения? - PullRequest
1 голос
/ 21 августа 2009

В соответствии с документацией для IDataRecord , методы реализации должны выдавать исключение IndexOutOfRangeException, если индекс поля находится вне диапазона полей. Однако если вы попытаетесь создать исключение IndexOutOfRangeException непосредственно в коде, FXCop пожалуется, что это зарезервированный тип исключения. Как вы соблюдаете договор об исключениях IDataRecord, сохраняя при этом FXCop довольным?

1 Ответ

4 голосов
/ 21 августа 2009

Игнорировать FXCop в кейсе.

Совершенно разумно бросить IndexOutOfRangeException, когда выбрано наиболее подходящее исключение - например, если вы реализуете IList<T>.

Возможно, вы захотите удалить его из конфигурации FXCop ...

...