public string Header(bool outputformat = false) { if (this.AutoAdded && this.SubElementsCount == 0) { return(null); } StringBuilder text = new StringBuilder(); if (outputformat) { text.Append('\t', this.Depth); } if (this.ElementType == TextElementType.XMLTag) { text.Append(this.BaseEvulator.LeftTag.ToString() + "?" + this.ElemName + HTMLUTIL.ToAttribute(this.ElemAttr) + "?" + this.BaseEvulator.RightTag.ToString()); } if (this.ElementType == TextElementType.Parameter) { text.Append(this.BaseEvulator.LeftTag.ToString() + this.BaseEvulator.ParamChar.ToString() + this.ElemName + HTMLUTIL.ToAttribute(this.ElemAttr) + this.BaseEvulator.RightTag.ToString()); } else if (this.ElementType == TextElementType.ElementNode) { StringBuilder additional = new StringBuilder(); if (!PhpFuctions.empty(this.TagAttrib)) { additional.Append('=' + this.TagAttrib); } text.Append(this.BaseEvulator.LeftTag.ToString() + this.ElemName + additional.ToString() + ((this.NoAttrib) ? ' ' + this.Value : HTMLUTIL.ToAttribute(this.ElemAttr))); if (this.DirectClosed) { text.Append(" /" + this.BaseEvulator.RightTag.ToString()); } else if (this.AutoClosed) { text.Append(this.BaseEvulator.RightTag); } else { text.Append(this.BaseEvulator.RightTag); } } else if (this.ElementType == TextElementType.CDATASection) { text.Append(this.BaseEvulator.LeftTag.ToString() + "![CDATA[" + this.Value + "]]" + this.BaseEvulator.RightTag.ToString()); } else if (this.ElementType == TextElementType.CommentNode) { text.Append(this.BaseEvulator.LeftTag.ToString() + "--" + this.Value + "--" + this.BaseEvulator.RightTag.ToString()); } if (outputformat && this.FirstChild?.ElemName != "#text") { text.Append("\r\n"); } return(text.ToString()); }
public string Outer(bool outputformat = false) { if (this.ElemName == "#document") { return(this.Inner()); } if (this.ElemName == "#text") { return(this.value); } if (this.ElementType == TextElementType.CommentNode) { return(this.BaseEvulator.LeftTag.ToString() + "--" + this.Value + "--" + this.BaseEvulator.RightTag.ToString()); } StringBuilder text = new StringBuilder(); StringBuilder additional = new StringBuilder(); if (!PhpFuctions.empty(this.TagAttrib)) { additional.Append("=" + this.TagAttrib); } if (this.ElementType == TextElementType.Parameter) { text.Append(this.BaseEvulator.LeftTag.ToString() + this.BaseEvulator.ParamChar.ToString() + this.ElemName + HTMLUTIL.ToAttribute(this.ElemAttr) + this.BaseEvulator.RightTag.ToString()); } else { if (this.AutoAdded) { if (this.SubElementsCount == 0) { return(string.Empty); } } text.Append(this.BaseEvulator.LeftTag.ToString() + this.ElemName + additional.ToString() + ((this.NoAttrib && this.ElementType == TextElementType.ElementNode) ? ' ' + this.Value : HTMLUTIL.ToAttribute(this.ElemAttr))); if (this.DirectClosed) { text.Append(" /" + this.BaseEvulator.RightTag); } else if (this.AutoClosed) { text.Append(this.BaseEvulator.RightTag); } else { text.Append(this.BaseEvulator.RightTag); text.Append(this.Inner(outputformat)); var eName = this.ElemName; if (!PhpFuctions.empty(this.AliasName)) { eName = this.AliasName; } text.Append(this.BaseEvulator.LeftTag + '/' + eName + this.BaseEvulator.RightTag.ToString()); } } return(text.ToString()); }