Как создать область ASP.NET MVC в качестве плагина DLL?

Вот чего я хочу добиться, я хочу разделить ОБЛАСТИ ASP.NET MVC как чистую одиночную DLL.

Blog.DLL Forums.DLL FAQ.DLL

Каждый из них представляет собой отдельную область ASP.NET MVC с собственными страницами по умолчанию CSHTML или ASPX. Установка, миграция и поддержка большого количества страниц, включая ресурсы, javascript и т. Д., Являются настоящей болью в долгосрочной перспективе. Поскольку большинство из них вряд ли изменится.

Мой последний сайт будет таким.

\MvcApplication
   \bin
      \MvcApplication.bin
      \Blog.dll
      \Forums.dll
   \Controllers
      \..
   \Models
      \..
   \Views
      \..
   \Global.asax
   \Web.config

Не добавляя ничего, просто удаляя Blog.dll, мое приложение должно поддерживать / blog и все его страницы. Если я хочу что-то настроить, то я могу добавить область, и добавить только страницы cshtml ..

\MvcApplication
   \bin
      \MvcApplication.bin
      \Blog.dll
      \Forums.dll
   \Areas
      \Blog
          \Views
              \Shared
                  \BlogLayout.cshtml <-- this will override the look
   \Controllers
      \..
   \Models
      \..
   \Views
      \..
   \Global.asax
   \Web.config

Это поможет в повторном использовании плагинов ASP.NET Area, просто поместив DLL в папку bin. Однако web.config может потребовать внесения некоторых изменений, но, скорее всего, мы сохраним значения конфигурации в базе данных, и единственное, что нужно, это строка подключения Entity Framework & quot; в web.config.

Мои проблемы (Вопросы)

Is it possible? It sure looks to me, but will there be any reflection/permission issues? How do I include cshtml/aspx views within one DLL? Probably compiled versions? I have seen couple of text template based View Engines on codeplex but I am little confused on how to actually use them. And how do I get ViewEngine to first check if physical directory file exists or not and then look into cshtml/aspx within the dll itself as resource file?

Ответы на вопрос(3)

Ваш ответ на вопрос