2015-05-05 5 views
0

У меня есть два сайта umbraco, один по версии 7.1.8, другой на 7.2.4. На сайте с 7.1.8 есть несколько контроллеров, все из которых наследуются от PluginController. Помимо наследования от PluginController не было никаких модификаций для моделей, то есть наследующих от Umbraco.Web.Models.RenderModel или в представлении. Он просто работает так же, как обычный asp.net MVC. У контроллеров нет причин разговаривать с Умбрако.Umbraco 7 Пользовательские контроллеры не работают

Однако мой второй сайт, похоже, не хочет работать таким же образом. Сообщения об ошибках, требующие использования Umbraco.Web.Models.RenderModel и т. Д.

Есть ли способ сказать, что Umbraco оставил мои контроллеры в покое, как на первом сайте?

ответ

1

Есть только два способа получить сообщение об ошибке выполнения предполагающего использовать Umbraco.Web.Models.RenderModel:

1) путем передачи пользовательской модели, которая не унаследует Umbraco.Web.Models.RenderModel в целях наследования от Umbraco.Web.Mvc.UmbracoTemplatePage

2) путем пропускания пользовательская модель, которая не наследует Umbraco.Web.Models.RenderModel в вид, макет которого ожидает модели быть типаUmbraco.Web.Models.RenderModel

Поскольку ваши взгляды не наследуют от Umbraco.Web.Mvc.UmbracoTemplatePage, это будет второй случай, поэтому проверьте свой макет. Например. установите Layout = null в своих представлениях и посмотрите, не исчезла ли ошибка.

Обращайтесь к Возвращаясь к нестандартной модели раздел here для получения более подробной информации и возможных обходных решений.

PS. Обратите внимание, что макет может быть установлен неявно через _ViewStart.cshtml, расположенный в папке «Представления».

Смежные вопросы