/// <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);
 }