У меня есть то, что появляется (для меня все равно), чтобы быть странной проблемой...
Я создал простой шаблон редактора для SelectListItem (SelectListItem.cshtml в папке ~/Views/Shared/EditorTemplates), например:
<ul class="select-list-item cell-15 col-3 omega clearfix">
@Html.EditorFor(c => c.Categories)
</ul>
Где c.Categories является IEnumerable
Это сработало хорошо, но я хотел, чтобы другой шаблон отображал коллекцию с немного другой разметкой, поэтому я скопировал и переименовал шаблон редактора, например, в "CategoryIcons.cshtm" и вызывается следующим образом:
<ul class="select-list-item cell-15 col-3 omega clearfix">
@Html.EditorFor(c => c.Categories, "CategoryIcons")
</ul>
Короче говоря, единственное различие заключается в том, что я указываю шаблон с именованным редактором.
Когда я открываю страницу, я получаю следующую ошибку:
Элемент модели, переданный в словарь, имеет тип "System.Collections.Generic.List`1 [System.Web.Mvc.SelectListItem]", но для этого словаря требуется элемент модели типа "System.Web.Mvc. SelectListItem
Объявление модели шаблона в обоих шаблонах id:
@model System.Web.Mvc.SelectListItem
Я не понимаю, почему работает шаблон по умолчанию, а именованный шаблон - нет. Любая помощь будет оценена.
Спасибо.