나는 RazorEngine을 사용하여 뷰를 가져 와서 html.but로로드하지만 내 문제는 내 데이터베이스에서 html 코드를 읽고 내 웹 페이지에 표시하는 것입니다.하지만 나에게 문자열을 보냈습니다. html 출력보다는 내 웹 페이지 결과. 나는이 문제 를 해결할 수있는 방법을 는 advace에 감사razorengine mvc를 사용하여보기 렌더링
이
@model Cms.ViewModules.MasterPageViewModel
@Model.PageLanguageViewModel.HtmlCode
과 같은 내 간단한보기이 내 의견에서 HTML로보기를 얻을하는 방법이다
public static class HtmlHelperPageContent
{
public static IHtmlString GetPageAll(this HtmlHelper htmlHelper, MasterPageViewModelmodel)
{
string page = model.PageLanguageViewModel.SablonHtlmCodu;
List<string> registeredModules = PageModulles.RegisteredModules;
foreach (var modulename in registeredModules)
{
string fullmodulename = "${" + modulename + "}";
if (page.Contains(fullmodulename))
{
string viewname = modulename.Insert(0, "PW_");
IHtmlString value = RenderViewHelper.RenderPartialToString("Views/Default/" + viewname + ".cshtml", model);
page=page.Replace(fullmodulename , value.ToHtmlString());
}
}
return MvcHtmlString.Create(page);
}
RenderViewHelper 클래스
public static class RenderViewHelper
{
public static IHtmlString RenderPartialToString(string viewPath, object model)
{
string viewAbsolutePath = MapPath(viewPath);
var viewSource = File.ReadAllText(viewAbsolutePath);
string renderedText = Razor.Parse(viewSource, model);
return new MvcHtmlString(renderedText);
}
}