2015-10-01 2 views
-1

У нас есть приложение MVC Asp.net, которое имеет несколько выпадающих списков в форме ввода.Неверный выбранный список выпадающих списков по умолчанию

Мы заполнить списки, как показано ниже:

@Html.DropDownListFor(model => model.Title, SelectLists.Title) 

public class SelectLists 
    { 
     public static IEnumerable<SelectListItem> Title = new[] 
     { 
      new SelectListItem {Text = "Title", Value = "", Selected = true}, 
      new SelectListItem {Text = "Mr", Value = "Mr"}, 
      new SelectListItem {Text = "Mrs", Value = "Mrs"}, 
      new SelectListItem {Text = "Miss", Value = "Miss"}, 
      new SelectListItem {Text = "Ms", Value = "Ms"}, 
      new SelectListItem {Text = "Dr", Value = "Dr"} 
     }; 
    } 

По умолчанию выбрано значение правильно сразу после Deploy на нашей производственной среде, но после того времени, что, кажется, происходит, является то, что для всех выпадающие, случайные величины начинают для выбора на загрузке страницы.

Когда мы проверяем элемент на форме, атрибут selected="selected" установлен на неверно отображаемом значении в раскрывающихся списках.

Когда мы повторно развертываем приложение, проблемы, похоже, временно уходят, это заставляет нас думать, что это может быть проблемой с IIS?

Приложение работает на IIS на сервере Windows 2012 на AWS Elastic Beanstalk.

+0

Это передано в виде с видом модели или ViewBag/Session? – JB06

+0

Что такое значение 'model.Title' при загрузке View? – markpsmith

+0

@ JB06 Что передано в представление? – ahammond

ответ

0

Я получил ответ от довольно полезных людей в Microsoft по этому поводу. Они предложили удалить статические списки и передать нестатические списки через ViewModel. Наличие статической информации в веб-приложении означает, что эти данные хранятся в домене приложения в IIS и могут быть затронуты при загрузке.