ASP.NET (MVC) - отобразить страницу в файл - PullRequest
2 голосов
/ 27 мая 2009

Мне нужно создать несколько статических html-файлов в качестве задания console / winform. Текущее решение использует построитель строк. Используя ASP.NET-MVC со строго типизированными страницами просмотра (System.Web.Mvc.ViewPage), мне было интересно, можно ли использовать эти страницы просмотра и выводить их в поток или файл без построения решения ASP.NET.

По сути, я хотел бы создать страницу просмотра, передать строго типизированный объект и отобразить результат.

Я также открыт для других движков представления.

Если это потребует перенести всю кухонную раковину, тогда я могу просто сделать стиль строителя струн.

Спасибо.

Ответы [ 3 ]

5 голосов
/ 27 мая 2009

Обратите внимание, если это поможет, так как я не совсем понял ваш вопрос.

[ControllerAction]
public void About()
{
    StringWriter builder = new StringWriter();
    TextWriter originalWriter = Response.Output;
    Response.SwitchWriter(builder);
    RenderView("About");

    string html = builder.ToString();

    originalWriter.Write(html);
}
3 голосов
/ 28 мая 2009

Мне лично нравится опция StringTemplate, упомянутая выше, но вы можете разместить среду выполнения ASP.NET в настольном приложении.

Рик Страл в West Wind Technologies имеет подробный пример того, как его настроить: Использование среды выполнения ASP.Net для расширения настольных приложений с помощью динамических сценариев HTML

Вот еще несколько примеров:

2 голосов
/ 27 мая 2009

Что вам нужно, это шаблонизатор. Я бы порекомендовал вам StringTemplate . Он может использоваться как автономный движок и имеет версию .NET. Есть CodeProject статья , которая поможет вам начать.

AFAIK Веб-формы ASP.NET не могут работать без инфраструктуры ASP.NET.

...