Я любил Погружение В Python , особенно если Вы - быстрое исследование. Начинающиеся основы все покрыты (и может медленно перемещаться для Вас), но последние немного глав являются большими средствами обучения.
Плюс, Паломник является довольно хорошим писателем.
Оказывается, если имя вашего элемента управления через Html.DropDownList совпадает с именем объекта коллекции, это вызывает проблему с ASP.Net MVC.
Поэтому, если я изменю следующий код:
<label for="Companies">Company: </label><%=Html.DropDownList("Companies",
new SelectList(ViewData.Model.Companies, "id", "name", item.CompanyID))%>
to:
<label for="Companies">Company: </label><%=Html.DropDownList("company",
new SelectList(ViewData.Model.Companies, "id", "name", item.CompanyID))%>
теперь все работает. Это связано с тем, что название коллекции на модели было Model.Companies .... помешанные ... также обратите внимание, что изменение регистра имени элемента управления с "Companies" на "companies" тоже не работает (что делает смысл полагаю).
Я мог бы изменить Модель, но поскольку большая часть ее построена с использованием Linq-to-SQL, я думаю, что легче изменить имена элементов Html.