Ведущий Диалог
Зарегистрирован: 09 January 2006
Сообщения: 172
Примеры кода: 0
|
Re[5]: Вынесение множества catch() в отдельный метод |
31 January 2007 15:30 |
|
|
|
|
Здравствуйте, mikeduglas, Вы писали:
M>Здравствуйте, Mike Chaliy, Вы писали:
M>>>Я наверняка знаю, что если NullReferenceException, то это означает, что такого поля нет в таблице БД.
MC>>NullReferenceException может выдаваться в милионах разных случаев. Вы рескуете сказать что у вас нема строки в БД, во всех этих милионах случаев. Ваш датаслой должен выдавать какоето более конкретное исключение. Могу даже идею подсказать RowNotFoundException .
M>Нет, 99% NullReferenceException в моих методах, о которых идёт речь, это обращение к ячейке DataGridViewCell по имени поля, которого ещё/уже нет в underlying-таблице.
Об этом я и пытаюсь вас предостеречь. Необходимо проверить на наличие ячейки и выдать более сознательный эксепшен. Представте себе например ситуацию когда занчение в ячейке с типом стринг вы приводите к какому нибуть типу. Потом обращаетесь к этому значению и получаете NullReferenceException. Так как ваш слой не шарит что это ошибка в коде, он тоже покажет месагу что не найдена строка.
Данное сообщение получено с сайта RSDN
|
|