我的自定义站点 CMS 中有 TinyMCE 编辑器,并将 HTML 内容存储在 SQL DB 中。
然后我在 cshtml RazorView 中渲染它:
@MvcHtmlString.Create(Model.Content)
如何在 TinyMCE 的 html 内容中包含 PartialView?
就像是:
...content html...
<div>[[ViewName]]</div>
...content html...
我的自定义站点 CMS 中有 TinyMCE 编辑器,并将 HTML 内容存储在 SQL DB 中。
然后我在 cshtml RazorView 中渲染它:
@MvcHtmlString.Create(Model.Content)
如何在 TinyMCE 的 html 内容中包含 PartialView?
就像是:
...content html...
<div>[[ViewName]]</div>
...content html...
可以使用以下命令将部分视图包含在 HTML 页面中
<% Html.RenderPartial("~/Views/Folder/ViewName.ascx");%>
您可以执行部分视图并将生成的 html 设置为 TinyMCE 的内容。
private string ProduceViewResult(string viewName, object model)
{
ViewData.Model = model;
using (var sw = new StringWriter())
{
var viewResult = ViewEngines.Engines.FindPartialView(ControllerContext, viewName);
var viewContext = new ViewContext(ControllerContext, viewResult.View, ViewData, TempData, sw);
viewResult.View.Render(viewContext, sw);
viewResult.ViewEngine.ReleaseView(ControllerContext, viewResult.View);
return sw.ToString();
}
}
用法
var partialViewHtml = ProduceViewResult("PartialViewName", myModel);