Представления MEF и Razor внутри библиотеки классов

У меня есть составное приложение Razor ASP .NET MVC 3, использующее MEF. Все будет хорошо, если я разверну плагины в виде файлов DLL и представлений (CSHTML) в обычной папке Views из приложения. Но это не очень чисто, и это не будет настоящий плагин, если я не помещу представления как встроенные ресурсы в файлы DLL (вместе с контроллерами и моделями).

Я читал много статей (большинство из они устарели). На самом деле, здесь, в Stack Overflow, есть один неплохой: Контроллеры и представления в библиотеке классов

Я также проверил документы для VirtualPathProvider и смог создать собственный, который находит файл в сборке и отлично его загружает ( или хотя бы получает поток к нему). Для этого я следил за документацией VirtualPathProvider в MSDN .

Существует также реализация для VirtualFile, но еще не для VirtualDirectory.

Вот проблема. Я работаю с представлениями Razor. Я знаю, что им нужны спецификации конфигурации из файла web.config для Razor, чтобы построить их. Но если я встраиваю их в DLL, эта конфигурация просто теряется.

Интересно, почему я продолжаю получать ошибку:

Вид в '~ / Plugins / CRM.Web.Views.CRM.Index.cshtml 'должен получить Мы также проверили документы для VirtualPathProvider , и я смог создать собственный, который находит файл в сборке и отлично загружает его (или, по крайней мере, получает поток к нему). Для этого я следил за документацией VirtualPathProvider в MSDN .

Существует также реализация для VirtualFile, но еще не для VirtualDirectory.

Вот проблема. Я работаю с представлениями Razor. Я знаю, что им нужны спецификации конфигурации из файла web.config для Razor, чтобы построить их. Но если я встраиваю их в DLL, эта конфигурация просто теряется.

Интересно, почему я продолжаю получать ошибку:

Вид в '~ / Plugins / CRM.Web.Views.CRM.Index.cshtml 'должен получить Мы также проверили документы для VirtualPathProvider , и я смог создать собственный, который находит файл в сборке и отлично загружает его (или, по крайней мере, получает поток к нему). Для этого я следил за документацией VirtualPathProvider в MSDN .

Существует также реализация для VirtualFile, но еще не для VirtualDirectory.

Вот проблема. Я работаю с представлениями Razor. Я знаю, что им нужны спецификации конфигурации из файла web.config для Razor, чтобы построить их. Но если я встраиваю их в DLL, эта конфигурация просто теряется.

Интересно, почему я продолжаю получать ошибку:

Вид в '~ / Plugins / CRM.Web.Views.CRM.Index.cshtml 'должен получить Мы смогли создать собственный файл, который находит файл в сборке и отлично его загружает (или, по крайней мере, получает поток к нему). Для этого я следил за документацией VirtualPathProvider в MSDN .

Существует также реализация для VirtualFile, но еще не для VirtualDirectory.

Вот проблема. Я работаю с представлениями Razor. Я знаю, что им нужны спецификации конфигурации из файла web.config для Razor, чтобы построить их. Но если я встраиваю их в DLL, эта конфигурация просто теряется.

Интересно, почему я продолжаю получать ошибку:

Вид в '~ / Plugins / CRM.Web.Views.CRM.Index.cshtml 'должен получить Мы смогли создать собственный файл, который находит файл в сборке и отлично его загружает (или, по крайней мере, получает поток к нему). Для этого я следил за документацией VirtualPathProvider в MSDN .

Существует также реализация для VirtualFile, но еще не для VirtualDirectory.

Вот проблема. Я работаю с представлениями Razor. Я знаю, что им нужны спецификации конфигурации из файла web.config для Razor, чтобы построить их. Но если я встраиваю их в DLL, эта конфигурация просто теряется.

Интересно, почему я продолжаю получать ошибку:

Вид в '~ / Plugins / CRM.Web.Views.CRM.Index.cshtml 'должен получить Мы следовали документации VirtualPathProvider в MSDN .

Также существует реализация для VirtualFile, но еще не для VirtualDirectory.

Вот проблема. Я работаю с представлениями Razor. Я знаю, что им нужны спецификации конфигурации из файла web.config для Razor, чтобы построить их. Но если я встраиваю их в DLL, эта конфигурация просто теряется.

Интересно, почему я продолжаю получать ошибку:

Вид в '~ / Plugins / CRM.Web.Views.CRM.Index.cshtml 'должен получить Мы следовали документации VirtualPathProvider в MSDN .

Существует также реализация для VirtualFile, но еще не для VirtualDirectory.

Вот проблема. Я работаю с представлениями Razor. Я знаю, что им нужны спецификации конфигурации из файла web.config для Razor, чтобы построить их. Но если я встраиваю их в DLL, эта конфигурация просто теряется.

Интересно, почему я продолжаю получать ошибку:

Вид в '~ / Plugins / CRM.Web.Views.CRM.Index.cshtml 'должен получить из WebViewPage или WebViewPage.

Может, мне просто нужно добавить код, чтобы он работал? Есть идеи?

28
задан Community 23 May 2017 в 11:44
поделиться