Как получить визуализированный PartialView из ViewEngineResult - PullRequest
0 голосов
/ 11 июня 2019

Я пытаюсь визуализировать PartialView в моем контроллере. Мне нужно, чтобы HTML PartialView был конкретным. Я использую этот код , чтобы получить HTML. Проблема, которая у меня есть сейчас, заключается в том, что я получаю не визуализированный PartialView, а весь вид. Мне нужен HTML-код визуализированного PartialView для электронной почты. ViewEngineResult не показывает какой-либо возможный способ получения PartialView.

Есть ли способ получить HTML-код PartialView?

Вот так я использую код из поста

            var partialView = PartialView("Index", viewModel);
            var html = partialView.ToHtml(HttpContext);

Мне пришлось изменить параметр ViewResult в методе ToHtml ().

до

    public static string ToHtml(this ViewResult result, HttpContext httpContext)

После

    public static string ToHtml(this PartialViewResult result, HttpContext httpContext)

Ответы [ 2 ]

0 голосов
/ 17 июня 2019

После небольшого копания я нашел это . Отлично работает сейчас

0 голосов
/ 11 июня 2019

вернуть желаемое представление.

для примера, предположим, что вы хотите, чтобы это представление "InvalidConfirmToken" возвращалось из контроллера, напишите:

return View("InvalidConfirmToken");

и удалите частичный рендеринг из layout.cshtml:

Html.RenderPartial("_ConfirmEmailAlert"); //remove this line

или поместите эту строку вверху _ConfirmEmailAlert.cstml:

@{
    Layout = null;
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...