如何从自定义帮助器中呈现Html.Action()的结果?

时间:2010-12-17 17:38:00

标签: c# asp.net-mvc-2

由于实现细节,我有一个部分视图,需要使用<%= Html.Action(Model.ViewerToRender) %>“渲染”成熟的视图。它在我的dev spike中工作得很好,我可以将该行直接放在页面上,但在生产代码中,必须在一个返回void的ViewPage帮助器方法中。给定以下代码中的htmlString变量,如何从此帮助程序中将其呈现给页面?

public static void RenderDocumentViewer(this ViewPage<DocumentViewModel> page)
{
    if(!page.Model.UseRenderPartial)
    {
        var htmlString = page.Html.Action(page.Model.ViewerToRender);
        // The following line is what I don't know how to do:
        page.RenderHtml(htmlString);
        return;
    }

    page.Html.RenderPartial(page.Model.ViewerToRender);
}

1 个答案:

答案 0 :(得分:1)

尝试

page.Response.Write(htmlString);