首页 > 解决方案 > 在自定义标签助手中写入内容

问题描述

我希望当我在 razor 中编写以下代码时:

<form-container>
    <h3>Hello World!</h3>
</form-container>

它呈现为:

<div class="row">
    <div class="col">

        <h3>Hello World!</h3>

    </div>
</div>

到目前为止,我开始为它编写标签助手类代码,但我没有设法将子项添加到其中:

public class FormContainerTagHelper : TagHelper {
    public override void Process(TagHelperContext context, TagHelperOutput output) {
        output.TagName = "div";
        output.TagMode = TagMode.StartTagAndEndTag;
        output.Attributes.Add("class", "row");

        //I wish I could do this:
        //output.Children.Add("div").Attributes.Add("class");
    }
}

标签: razorrazorengineasp.net-core-tag-helpers

解决方案


我能够通过使用类似的东西来做到这一点:

    output.PreContent.SetHtmlContent("<div class='col'>");
    output.PostContent.SetHtmlContent("</div>");

推荐阅读