예제 #1
0
        private void SetAttrsByArraylistToJobAttrs(XmlDocument xmldoc, XmlElement parentElem, string[] attrs, ArrayList[] arraylist, string attrname)
        {
            //循环给每一个节点赋值,并挂载到父节点
            int i = 0;

            foreach (var item in arraylist)
            {
                XmlElement element = xmldoc.CreateElement(attrname);
                object[]   obj     = item.ToArray();
                XmlGenerate.AutoGerateCNodeAttr_CORE(element, parentElem, attrs, obj);
                i++;
            }
        }
예제 #2
0
        /// <summary>
        /// 给子节点组中的子节点属性批量赋值
        /// </summary>
        /// <param name="xmldoc"></param>
        /// <param name="parentElemt"></param>
        /// <param name="xmlElements"></param>
        /// <param name="attrs"></param>
        /// <param name="list"></param>
        /// <param name="attrname"></param>
        internal static void SetAttrsByArrayToJobAttrs2(XmlDocument xmldoc, XmlElement parentElemt, XmlElement[] xmlElements, string[] attrs, List <Dictionary <string, string> > list, string attrname)
        {
            foreach (var xmlelement in xmlElements)
            {
                XmlElement childElem = xmldoc.CreateElement(attrname);
                int        i         = 0;
                foreach (var listelement in list)
                {
                    XmlGenerate.AutoGerateCNodeAttr_CORE(parentElemt, childElem, attrs, listelement.Values.ToArray());
                    i++;
                }
                string count = parentElemt.OuterXml;
            }
            //循环给每一个节点赋值,并挂载到父节点

            //加载父节点;{rootNode.Name}  设置子节点 {nodeChild.Name}  属性:{attrName[i]}   属性值: {value[i]}
        }
예제 #3
0
        internal static void SetAttrsByArrayToJobAttrs(XmlDocument xmldoc, XmlElement parentElem, XmlElement[] xmlElements, string[] attrs, List <string[]> list, string attrname)
        {
            //foreach (var xmlelement in xmlElements)
            //{

            //循环给每一个节点赋值,并挂载到父节点
            foreach (var listElem in list)
            {
                int        i         = 0;
                XmlElement childElem = xmldoc.CreateElement(attrname);
                XmlGenerate.AutoGerateCNodeAttr_CORE(parentElem, childElem, attrs, listElem.ToArray());
                i++;
            }
            //}
            //循环给每一个节点赋值,并挂载到父节点
            //int i = 0;
            //foreach (var item in list)
            //{
            //    XmlElement element = xmldoc.CreateElement(attrname);
            //    XmlGenerate.AutoGerateCNodeAttr_CORE(element, parentElem, attrs, item.ToArray());
            //    i++;
            //}
        }
예제 #4
0
        /// <summary>
        /// 给子节点组中的子节点属性批量赋值
        /// </summary>
        /// <param name="xmldoc"></param>
        /// <param name="parentElemt"></param>
        /// <param name="xmlElements"></param>
        /// <param name="attrs"></param>
        /// <param name="list"></param>
        /// <param name="attrname"></param>
        internal static void SetAttrsByArrayToJobAttrs3(XmlDocument xmldoc, XmlElement parentElemt, XmlElement[] xmlElements, List <Dictionary <string, string> > list, string attrname)
        {
            //int i = 0;
            //最原始的想法  再引入数组批量赋值 xmlelement.SetAttribute(list[i].Keys,list[i].Values);
            List <string[]> keyslist   = new List <string[]>();
            List <string[]> valueslist = new List <string[]>();

            try
            {
                foreach (var li in list)
                {
                    int      j        = 0;
                    int      k        = 0;
                    string[] strkey   = new string[li.Keys.Count];
                    string[] strvalue = new string[li.Keys.Count];

                    foreach (var key in li.Keys)
                    {
                        strkey[j] = key.ToString();
                        j++;
                    }
                    keyslist.Add(strkey);
                    foreach (var value in li.Values)
                    {
                        strvalue[k] = value.ToString();
                        k++;
                    }
                    valueslist.Add(strvalue);
                }
            }
            catch (Exception ex)
            {
                string exstr = ex.ToString();
                //throw;
            }



            int i = 0;

            foreach (var xmlelement in xmlElements)
            {
                XmlElement childElem = xmldoc.CreateElement(attrname);
                XmlGenerate.AutoGerateCNodeAttr_CORE(parentElemt, childElem, keyslist[i].ToArray(), valueslist[i].ToArray());
                i++;
            }



            //foreach (var xmlelement in xmlElements)
            //{
            //    int q = 0;
            //     //xmlelement = xmldoc.CreateElement(attrname);
            //    for (int m = 0; m < 12; m++)
            //    {
            //        xmlelement.SetAttribute(list[q].[m], strvalue[m]);
            //    }
            //    parentElemt.AppendChild(xmlelement);

            //}
            //循环给每一个节点赋值,并挂载到父节点
            string count = parentElemt.OuterXml;
            //加载父节点;{rootNode.Name}  设置子节点 {nodeChild.Name}  属性:{attrName[i]}   属性值: {value[i]}
        }