Пустая строка возвращает ноль для текстового поля для MVC 4
В задаче, предварительно заполненной Html.TextBoxFor в asp.net mvc 3, вы можете увидеть ответ, в котором следующий фрагмент кода работает правильно.
ViewBag.CompName = "Some Name";
Тогда по вашему мнению:
@Html.TextBoxFor(model =>model.Comps.CompName, new {@Value = ViewBag.CompName})
Однако, когда текстовое поле получает начальное значение пустой строки "", оно, похоже, публикует значение NULL для этого текстового поля.
ViewBag.CompName = "";
Это отправляет нулевое значение вместо пустой строки.
Есть ли способ вернуть пустую строку вместо нуля?
1 ответ
Решение
Это ожидаемое поведение. Попробуйте использовать DisplayFormat
приписывать.
[DisplayFormat(ConvertEmptyStringToNull=false)]
на вершине CompName
собственность в вашей модели.
Например:-
[DisplayFormat(ConvertEmptyStringToNull = false)]
public string CompName
{
get { return _compName; }
set { _compName= value; }
}