【问题标题】:How to pass in HTML to a Razor Partial View?如何将 HTML 传递给 Razor 局部视图?
【发布时间】:2019-11-04 09:33:09
【问题描述】:

我想将 HTML 传递给我的局部视图,如下所示:

@Html.Partial("_MyForm", "<button id='foo'>Process Data</button>")

这目前有效,但传入字符串是不雅的。以前,IHTMLString 允许您这样做(请参阅link):

public class HTMLViewModel
{
    public Func<object, IHtmlString> Content { get; set; }
}

@Html.Partial("_MyForm", new HTMLViewModel()
{
    Content =  
    @<button>
       <h1>Hello World</h1>
    </button>
})

.NET Core 中不再存在 IHTMLString,该方法是否仍可通过其他一些功能复制?

【问题讨论】:

    标签: c# .net razor razor-pages


    【解决方案1】:

    您可以使用IHtmlContent 来维护您当前的方法:

    public Func<object, IHtmlContent> Content { get; set; }
    

    然后在局部:

    @model HTMLViewModel
    @Model.Content(null)
    

    根据您使用的 .NET Core 版本,您还可以利用此处讨论的一些内联函数标记更改:https://github.com/aspnet/AspNetCore-Tooling/pull/334

    【讨论】:

    • 这还是要走的路吗?
    猜你喜欢
    • 2014-02-05
    • 1970-01-01
    • 2013-12-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-03-24
    • 2019-02-01
    • 2017-02-16
    相关资源
    最近更新 更多