我创建了一个带有按钮发送的aspx页面。
在那个按钮上,点击后面的函数代码。
我想要的是,当我点击按钮,以获取在变量中呈现的aspx页面的所有html源代码,这样我就可以通过邮件发送它。如何获取呈现的html
来自代码隐藏函数的源代码。

最佳答案

其实不久前我刚刚写了一个方法。它在提供的相对路径上获取视图,传入提供的模型,并将视图呈现为字符串。

public static string RenderViewToString(string relativePathToControl, object viewData)
{
    ViewPage viewPage = new ViewPage() { ViewContext = new ViewContext() };

    viewPage.ViewData = new ViewDataDictionary(viewData);
    viewPage.Controls.Add(viewPage.LoadControl(relativePathToControl));

    StringBuilder sb = new StringBuilder();
    using (StringWriter sw = new StringWriter(sb))
    {
        using (HtmlTextWriter tw = new HtmlTextWriter(sw))
        {
            viewPage.RenderControl(tw);
        }
    }

    return sb.ToString();
}

您可能需要添加一些using语句。

09-16 14:57