Рендеринг строки как бритвы cshtml - PullRequest
2 голосов
/ 24 февраля 2012
public ActionResult Index()
{
    return View("ViewName");  // cshtml file name
}

Это нормально работает.

public ActionResult Index()
{
    string razor = "<p>Date: @DateTime.Now</p>";
    return View(razor);
}

Могу ли я сделать что-то подобное? Не отображать файл .cshtml, отображать строку ...

- Правка ------

Я фактически создаю файлы .cshtml программно. Например, я буду использовать @ Html.TextBoxFor (...) или оператор foreach в моей строке. - E-D только что отредактировал

Ответы [ 3 ]

1 голос
/ 24 февраля 2012

Это отвечает на ваш вопрос:

Действие:

public ActionResult Index()
{
    HtmlString razor = new HtmlString(string.Format("<p>Date: {0}</p>", DateTime.Now.ToString()));
    return View(razor);
}

Просмотр Index.cshtml:

@model HtmlString

@Model

Решение 2, реализовать это в вашем контроллере, представление не требуется:

public HtmlString Index()
{
    return new HtmlString("<p>Hello World!</p>");
}
0 голосов
/ 12 февраля 2013

RazorEngine решает мою проблему точно. Спасибо всем. http://razorengine.codeplex.com/

0 голосов
/ 24 февраля 2012

Попробуйте использовать ContentResult :

return Content(String.Format("<p>Date: {0}</p>",DateTime.Now));
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...