Как установить значение по умолчанию пустой строки TextBox вместо нуля

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

Затем, когда вы пытаетесь сохранить изменения, проверка не проходит.

Таким образом, вместо того, чтобы устанавливать каждое свойство в пустую строку, как я могу автоматически установить для каждого элемента TextBox в форме значение по умолчанию пустой строкой, а не нулевой?

26
задан Haider Ali Wajihi 8 March 2014 в 13:13
поделиться

2 ответа

Вы можете поместить следующий атрибут на ваши строковые свойства в вашей модели:

[DisplayFormat(ConvertEmptyStringToNull=false)]

Таким образом, когда кто-то размещает форму с пустыми текстовыми полями, они будут пустой строкой вместо null...

56
ответ дан 28 November 2019 в 06:42
поделиться

Если честно, я бы сказал, что ваша методология кодирования устарела и ошибочна. Вы должны использовать все возможности, это несложно. Именно для этого предназначена string.IsNullOrEmpty (value); .

Я предполагаю, что ваша логика проверки выглядит примерно так:

if (value == string.Empty) { isValid = false; } 

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

string value1 = null;
string value2 = string.Empty;

string.IsNullOrEmpty(value1); // true
string.IsNullOrEmpty(value2); // true
2
ответ дан 28 November 2019 в 06:42
поделиться
Другие вопросы по тегам:

Похожие вопросы: