Значения DBNull в представлении ASP.NET MVC - PullRequest
0 голосов
/ 06 мая 2010

Я пишу простое веб-приложение ASP.NET MVC. На данный момент я просто пытаюсь отобразить строго типизированный DataSet в автоматически сгенерированном представлении. Однако некоторые значения в наборе данных являются нулевыми и вызывают исключения.

Мне интересно, как этот простой сценарий обрабатывается другими. Кажется чрезмерным санировать все значения в наборе данных, и, кроме того, в конечном итоге у меня будет много наборов данных в конечном продукте. Я использую DataSets, потому что у меня есть серверная часть Oracle, поэтому модели Entity не подходят - я бы предпочел не использовать провайдеров выборки или раздавать деньги для коммерческого решения.

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

Заранее спасибо.

Ответы [ 2 ]

1 голос
/ 06 мая 2010

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

select coalesce(first_name, '') as first_name, ...

или

select coalesce(parent_id, 0) as parent_id, ...
1 голос
/ 06 мая 2010

Не может быть и речи сделать что-то вроде:

<%= (eventClass["MyColumn"] != DBNull.Value) ? eventClass["MyColumn"] : "" %>

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

HTHS
Charles

...