Как использовать несколько движков представления в приложении ASP.NET MVC - PullRequest
3 голосов
/ 10 декабря 2008

Я хотел бы использовать два механизма просмотра в моем веб-приложении asp.net mvc. Первый - это движок вида Brail из проекта MVCContrib, а другой - мой пользовательский движок для генерации кода JavaScript. Тем не менее, я не могу настроить приложение для использования обоих движков. Я хотел бы использовать расширение файла представления, чтобы различить, какой механизм должен обработать запрос - .Brail для двигателя Brail - .json - для моего собственного движка

Когда я добавляю два движка в коллекцию ViewEngines в global.asax.cs, система всегда ищет представления * .brail и выдает исключение, если не находит. Это никогда не смотрит на мои * .json взгляды ... Это проблема с ASP.Net MVC Framework, с движком Brail View или с моим кодом? Как с этим обращаться?

Ответы [ 2 ]

3 голосов
/ 11 декабря 2008

Как это.

РЕДАКТИРОВАТЬ: Если ваш пользовательский ViewEngine не обрабатывает * .json, у вас вполне может быть ошибка в вашем движке вида. Самый простой способ справиться с этим - это ввести подтип VirtualPathProviderViewEngine и установить MasterLocationFormats, ViewLocationFormats и PartialViewLocationFormats в конструкторе. Посмотрите исходный код для WebFormViewEngine для очень простого примера. Таким образом, фреймворк делает всю работу за вас.

2 голосов
/ 10 декабря 2008

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...