Есть ли команда для частичного рендеринга?
просмотров в строку
Прямого пути, насколько я знаю, нет. Но это возможно с некоторой насмешкой. Я использую Moq здесь, но подойдет любая насмешливая структура.
var writer = new StringWriter();
var context = new Mock<HttpContextBase>();
var response = new Mock<HttpResponseBase>();
context.Setup(ctx => ctx.Response).Returns(response.Object);
response.Setup(res => res.Output).Returns(writer);
var oldContext = ControllerContext.HttpContext;
ControllerContext.HttpContext = context.Object;
var partialView = PartialView("TagCloud", tags);
partialView.ExecuteResult(ControllerContext);
var resultHtml = writer.ToString();
ControllerContext.HttpContext = oldContext;