/// <summary> /// 如果指定的子元素存在则返回该元素,否则创建并返回 /// </summary> /// <param name="parent"></param> /// <param name="elemName"></param> /// <returns></returns> public static XmlElement GetChildElement(this XmlElement parent, string elemName) { XmlElement element = parent.SelectSingleNode(elemName) as XmlElement; if (element == null) element = parent.CreateChildElement(elemName); return element; }
/// <summary> /// 在指定元素下创建CDATA子元素 /// </summary> /// <param name="parent"></param> /// <param name="elemName"></param> /// <param name="content"></param> public static void CreateCData(this XmlElement parent, string elemName, string content) { XmlElement element = parent.CreateChildElement(elemName); XmlCDataSection cdata = element.OwnerDocument.CreateCDataSection(content); element.AppendChild(cdata); }
/// <summary> /// 将属性值作为嵌套子元素的内嵌文本来设置 /// </summary> /// <param name="parent">父元素节点</param> /// <param name="elemName">要添加的子元素名称</param> /// <param name="value">要设置的元素值</param> public static void SetElementText(this XmlElement parent, string elemName, string value) { XmlElement element = parent.CreateChildElement(elemName); XmlText text = parent.OwnerDocument.CreateTextNode(value); element.AppendChild(text); }