如何在.Net MVC中从View获取HTML内容而不通过浏览器实际渲染视图?

2026-03-30 12:061阅读0评论SEO资讯
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计231个文字,预计阅读时间需要1分钟。

如何在.Net MVC中从View获取HTML内容而不通过浏览器实际渲染视图?

在控制器中,我有一个ActionResult,我想发送一封+HTML电子邮件,该电子邮件的内容由视图生成。我可以在传递模型时获取视图生成的结果,并避免将其发送到浏览器,而不是在我的控制器中使用两个ac。

如何在.Net MVC中从View获取HTML内容而不通过浏览器实际渲染视图?

我的控制器中有一个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(); }

本文共计231个文字,预计阅读时间需要1分钟。

如何在.Net MVC中从View获取HTML内容而不通过浏览器实际渲染视图?

在控制器中,我有一个ActionResult,我想发送一封+HTML电子邮件,该电子邮件的内容由视图生成。我可以在传递模型时获取视图生成的结果,并避免将其发送到浏览器,而不是在我的控制器中使用两个ac。

如何在.Net MVC中从View获取HTML内容而不通过浏览器实际渲染视图?

我的控制器中有一个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(); }