Пример #1
0
    private static void WriteTo(
        TagBuilder tagBuilder,
        TextWriter writer,
        HtmlEncoder encoder,
        TagRenderMode tagRenderMode)
    {
        switch (tagRenderMode)
        {
        case TagRenderMode.StartTag:
            writer.Write("<");
            writer.Write(tagBuilder.TagName);
            tagBuilder.AppendAttributes(writer, encoder);
            writer.Write(">");
            break;

        case TagRenderMode.EndTag:
            writer.Write("</");
            writer.Write(tagBuilder.TagName);
            writer.Write(">");
            break;

        case TagRenderMode.SelfClosing:
            writer.Write("<");
            writer.Write(tagBuilder.TagName);
            tagBuilder.AppendAttributes(writer, encoder);
            writer.Write(" />");
            break;

        default:
            writer.Write("<");
            writer.Write(tagBuilder.TagName);
            tagBuilder.AppendAttributes(writer, encoder);
            writer.Write(">");
            if (tagBuilder._innerHtml != null)
            {
                tagBuilder._innerHtml.WriteTo(writer, encoder);
            }
            writer.Write("</");
            writer.Write(tagBuilder.TagName);
            writer.Write(">");
            break;
        }
    }