2013-11-10 1 views
1

Существует несколько «требований»:Есть ли способ использовать фактический вид MVC и модель для создания Html-файла?

1) Приложение должно генерировать статические файлы HTML из разметки бритвы.

2) Контроллер в достижении (1) должен использовать представления и модели, которые уже определены в приложении.

Я понимаю, что RazorEngine может объединить тривиальный шаблон и модель в виде строки, содержащей HTML:

string template = "Hello @Model.Name! Welcome to Razor!"; 
string result = Razor.Parse(template, new { Name = "World" }); 

документация не говорит много, но проблема в том, что это не идет достаточно далеко. Я хочу, чтобы метод Анализировать либо принять:

а) имя зрения известного контроллера или

б) пути представления.

Есть ли способ использовать фактический вид MVC и модель для создания Html-файла? Будет оценен рабочий пример.

ответ

1

b) путь к виду.

Если вы знаете путь зрения, вы можете прочитать его содержимое:

string viewPath = "..."; 
string template = File.ReadAllText(viewPath); 

, а затем в документации говорится, вы можете использовать бритву Engine передать модель и содержание зрения для получения надбавки:

string result = Razor.Parse(template, new { Name = "World" }); 
+0

Я думал об этом, но думал, что это будет сложнее. Я не думал, что он сможет выработать операторы использования и т. Д. Итак, я поставил проблему здесь, прежде чем я даже попробовал. – CarneyCode

+0

Было бы неплохо, если бы я мог получить путь к виду из контекста. Я быстро посмотрю. – CarneyCode

+0

http://stackoverflow.com/a/10129852/29407 –

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