加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

asp.net-mvc – 从.Net MVC View获取HTML而不实际在浏览器中呈现

发布时间:2020-12-16 09:14:59 所属栏目:asp.Net 来源:网络整理
导读:我的控制器中有一个ActionResult,我想发送一封 HTML电子邮件,该电子邮件的正文由视图生成.我可以在传递模型时获取视图的结果并避免将其发送到浏览器,而不是在我的控制器中使用2个actionresults方法? 解决方法 MvcMailer是一个很棒的小项目,支持使用MVC视图
我的控制器中有一个ActionResult,我想发送一封 HTML电子邮件,该电子邮件的正文由视图生成.我可以在传递模型时获取视图的结果并避免将其发送到浏览器,而不是在我的控制器中使用2个actionresults方法?

解决方法

MvcMailer是一个很棒的小项目,支持使用MVC视图生成电子邮件.它以NuGet包的形式提供.

为了呈现字符串而不是响应的视图,请使用此代码(relativePath指向您的视图文件):

var content = string.Empty;
        var view = ViewEngines.Engines.FindView(ControllerContext,relativePath,null);
        using (var writer = new StringWriter())
        {
            var context = new ViewContext(ControllerContext,view.View,ViewData,TempData,writer);
            view.View.Render(context,writer);
            writer.Flush();
            content = writer.ToString();
        }

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读