Читать пустые значения как пустые, а не как значения по умолчанию - PullRequest
2 голосов
/ 17 мая 2010

Как прочитать пустые значения из файла "dbf" в C #. В настоящее время при чтении файлов dbf пустые значения в файле автоматически преобразуются в значения по умолчанию. Как пустое десятичное поле преобразуется в «0,000». Может кто-нибудь, пожалуйста, помогите в способе чтения пустых полей, как они есть, а не как значения по умолчанию.

Ответы [ 3 ]

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

decimal - это так называемый тип значения , и он не может быть нулевым, поэтому, вероятно, вы получаете эти значения по умолчанию. Однако в большинстве баз данных есть понятие пустых значений (DbNull), поэтому, скорее всего, это просто вопрос правильного чтения значения. Если вы отправите какой-то код, мы сможем вам помочь.

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

Формат файла .dbf восходит к каменному веку вычислений. У него никогда не было понятия «пустое» значение столбца, неназначенные поля получат значение по умолчанию. Поддержка пустых столбцов появилась только в FoxPro. Я считаю, что то, что вы просите, невозможно.

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

Можете ли вы объявить ваши переменные (как минимум, типы значений) как обнуляемые типы :

decimal? myDecimal = null;

Тогда, если в поле нет значения, его следует оставить равным нулю и не устанавливать значение по умолчанию.

Синтаксис T? сокращение от Nullable, где T - тип значения. Две формы взаимозаменяемы.

...