До MVC 5, DropDownList был scaffolded в моем Razor Редактировать Вид:Добавление htmlattributes к помощнику DropDownList изменяет поведение
@Html.DropDownList("EntityId", String.Empty)
Но теперь эквивалент (пост MVC 5) scaffolded как:
@Html.DropDownList("EntityId", null, htmlAttributes: new { @class = "form-control" })
Я не хочу, чтобы добавить htmlAttributes
сохранить интерфейс последовательной, но DropDownList больше не работает, как ожидалось для обнуляемого EntityId (int ? EntityId)
. Проблема в том, что элемент по умолчанию установлен в первый элемент в списке, если EntityId имеет значение NULL. Я хочу пустой элемент, если идентификатор равен null, и соответствующий выбор, если нет.
PS. Мой контроллер строит список следующим образом: ViewBag.EntityId = new SelectList(db.Entities, "EntityId", "Name", EntityId);
Есть ли у вашей модели есть свойство вашего связывания? (у вас не должно быть одинакового имени для свойства модели и свойства ViewBag' SelectList) –
Да, возможно, это может вызвать проблемы? Не уверен, почему я когда-либо это делал, но я подозреваю, что это похоже на мой код. Я только что видел ваш ответ ниже, и попробую это вернуться на работу завтра. Thx – tr3v
Только что заметил, почему я использую одно и то же имя свойства как для модели, так и для ViewBag - это потому, что по умолчанию она находится в контроллере по умолчанию - что-то, о чем нужно знать. – tr3v