2012-03-14 3 views
14

Я смотрю на создание веб-настраиваемого механизма компоновки и хотел бы напрямую использовать бритвенный двигатель под капотом.Динамически производят вид бритвы в Runtime?

Допустим, у меня есть информация, доступные через классы, XML или базы данных - Я хочу, чтобы преобразовать его в машинный код бритвой во время выполнения (под этим я имею в виду мой источник определения содержания и структуры основывается на модель поставщика). Вместо того, чтобы конвертировать xml-файл или что-то на лету каждый запрос, я решил, что я мог бы просто написать Razor, и пусть этот механизм просмотра позаботится обо всем.

Могу ли я подключить код бритвы непосредственно в двигатель от источника, который не является файловой системой?

Будут ли какие-либо ошибки, если я динамически генерирую .cshtml виды и макеты в файлы во время выполнения [и динамически устанавливаю эти представления в действиях контроллера]?

+0

Был ли полезен ответ? Как ваше стремление загружать взгляды динамически идет? – fahadash

ответ

16

Это можно сделать. Бритва будет иметь некоторые более Гоча моменты, чем классический WebForms смотреть двигатель, но вот некоторые ресурсы:

http://rebuildall.umbraworks.net/2009/11/17/ASP_NET_MVC_and_virtual_views

Using custom VirtualPathProvider to load embedded resource Partial Views

Storing ASP.Net MVC Views in the Database

ASP.NET MVC load Razor view from database

вы будете создавать пользовательские ViewEngine что определит, где искать взгляды. Представления могут храниться в файловой системе, в базе данных или в виде встроенных ресурсов. Прочитайте ссылки, которые я вам предоставил, и это должно вас заставить!

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