Как установить значение в @Html.TextBoxFor в синтаксисе Razor?

Я создал текстовое поле с использованием Razor и пытаюсь установить value следующим образом.

@Html.TextBoxFor(model => model.Destination, new { id = "txtPlace", value= "3" })

Я попытался добавить value с помощью @

@Html.TextBoxFor(model=> model.Destination, new { id = "txtPlace", @value= "3" })

даже если он отображает тег input html с пустым value

<input id="txtPlace" name="Destination" type="text" value 
   class="ui-input-text ui-body-c ui-corner-all ui-shadow-inset ui-mini" >

Что я делаю неправильно?

Ответ 1

Проблема в том, что вы используете нижний регистр v.

Вам нужно установить значение Value, и оно должно исправить вашу проблему:

@Html.TextBoxFor(model => model.Destination, new { id = "txtPlace", Value= "3" })

Ответ 2

Я попытался заменить value Value и это сработало. Теперь он установил value в теге input.

@Html.TextBoxFor(model => model.Destination, new { id = "txtPlace", Value= "3" })

Ответ 3

Он будет писать стоимость вашей model.Destination собственности.

Это по дизайну. Перед возвратом вашего представления вы захотите заполнить свой объект Destination значением, которое вы хотите на своем контроллере.

Ответ 4

Я попытался заменить value Value и это сработало. Теперь он установил value в теге input.

Ответ 5

Это работает для меня, в MVC5:

@Html.TextBoxFor(m => m.Name, new { @class = "form-control", id = "theID" , @Value="test" })