В ASP.NET MVC я сталкиваюсь с ошибкой неправильного типа при отображении пользовательского элемента управления с правильным типизированным объектом.

StackOverflow https://stackoverflow.com/questions/5544

  •  08-06-2019
  •  | 
  •  

Вопрос

Я столкнулся с ошибкой вида:«Элемент модели, переданный в словарь, имеет тип FooViewData, но для этого словаря требуется элемент модели типа bar», хотя я передаю объект правильного типа (bar) для типизированного пользовательского элемента управления.

Это было полезно?

Решение

То, что сказал @MattMitchell, вероятно, является причиной того, что вы видите эту ошибку.

Если вы хотите знать почему;это связано с тем, что когда вы передаете значение null в качестве параметра controlData при использовании RenderUserControl(), платформа вместо этого попытается передать данные представления из текущего контекста представления в пользовательский элемент управления (см. метод UserControlExtensions.DoRendering в System.Web.Mvc).

Другие советы

Вероятно, произошло то, что объект, предоставленный при отрисовке пользовательского элемента управления, на самом деле имеет значение null.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top