在代码中渲染 MVC 视图

发布于 2024-11-07 10:36:19 字数 607 浏览 0 评论 0原文

我正在尝试在代码中渲染强类型视图页面并获取结果 HTML 输出。这是我正在使用的代码:

public static string RenderPartialToString(ViewPage vp) {
    StringBuilder sb = new StringBuilder();
    using (StringWriter sw = new StringWriter(sb)) {
        using (HtmlTextWriter tw = new HtmlTextWriter(sw)) {
            ViewContext vc = new ViewContext();
            vc.ViewData = vp.ViewData;
            vp.RenderView(vc);
        }
    }
    vp.Dispose();
    vp = null;

    string s = sb.ToString();
    sb = null;

    return s;
}

现在,我在 vp.RenderView() 行上收到 MethodNotImplemented 错误。此时是否无法渲染 MVC 视图页面(MVC 3)?

I'm trying to render a strongly typed viewpage in code and get the resulting HTML output. Here's the code I am using:

public static string RenderPartialToString(ViewPage vp) {
    StringBuilder sb = new StringBuilder();
    using (StringWriter sw = new StringWriter(sb)) {
        using (HtmlTextWriter tw = new HtmlTextWriter(sw)) {
            ViewContext vc = new ViewContext();
            vc.ViewData = vp.ViewData;
            vp.RenderView(vc);
        }
    }
    vp.Dispose();
    vp = null;

    string s = sb.ToString();
    sb = null;

    return s;
}

Right now, I am getting a MethodNotImplemented error on the vp.RenderView() line. Is it not possible to render MVC viewpages at this time (MVC 3)?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

时光礼记 2024-11-14 10:36:19

我会看看他们如何在 MvcMailer 应用程序中执行此操作,该应用程序将 MVC 视图呈现到电子邮件中:

https://github。 com/smsohan/MvcMailer

http://www.codeproject.com/KB/aspnet/MvcMailerNuGet.aspx

希望这有帮助。

I would take a look at how they do it in the MvcMailer application which renders MVC views into emails:

https://github.com/smsohan/MvcMailer

http://www.codeproject.com/KB/aspnet/MvcMailerNuGet.aspx

Hope this helps.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文