用Razor解析HTML字符串

时间:2019-01-08 09:39:58

标签: asp.net-mvc asp.net-core .net-core asp.net-core-mvc asp.net-core-2.0

我有一个应用程序,该应用程序使用诸如

之类的asp.net核心标记助手来生成动态html代码。
   <input type="hidden" asp-for="Id" />
   <input asp-for="Name" />
   <input asp-for="IsActive" />

我将此html代码从数据库返回到控制器中,我需要使用asp.net核心的Razor Engine对其进行解析,并且当然要传递一个模型以供引擎从中获取数据,我该怎么做?

3 个答案:

答案 0 :(得分:0)

解决此问题的一种可能方法是创建一个访问数据库的自定义IFileProvider。

这是一篇博客文章,解释了如何做,但是它有点老了: https://www.mikesdotnetting.com/article/301/loading-asp-net-core-mvc-views-from-a-database-or-other-location

当前的官方FileProvider文档位于:https://docs.microsoft.com/en-us/aspnet/core/fundamentals/file-providers?view=aspnetcore-2.2

这将使用数据库中的内容模拟一个虚拟文件系统,然后可以像使用任何cshtml文件一样使用这些视图(例如,作为部分视图)

答案 1 :(得分:0)

我最终创建了一个自定义文件提供程序,该提供程序从数据库获取视图,并且此链接对此进行了说明 https://www.mikesdotnetting.com/article/301/loading-asp-net-core-mvc-views-from-a-database-or-other-location

答案 2 :(得分:-2)

定义模型

    public class Model {
       Id, Name...
    }

@Html.Raw(your html template)