.NET 4.x Объединение двух файлов XML по ключам - C#

Узнай цену своей работы

Формулировка задачи:

Есть два файла XML: zap.xml
<?xml version="1.0" encoding="UTF-8"?>
<dataroot>
<ZAP>
<N_ZAP>1</N_ZAP>
<PR_NOV>0</PR_NOV>
<ID_PAC>20266</ID_PAC>
</ZAP>
<ZAP>
<N_ZAP>2</N_ZAP>
<PR_NOV>0</PR_NOV>
<ID_PAC>20348</ID_PAC>
</ZAP>
<ZAP>
<N_ZAP>3</N_ZAP>
<PR_NOV>0</PR_NOV>
<ID_PAC>20562</ID_PAC>
</ZAP>
<ZAP>
<N_ZAP>4</N_ZAP>
<PR_NOV>0</PR_NOV>
<ID_PAC>20797</ID_PAC>
</ZAP>
</dataroot>
и pacient.xml
<?xml version="1.0" encoding="UTF-8"?>
<dataroot>
<PACIENT>
<ID_PAC>20266</ID_PAC>
<VPOLIS>3</VPOLIS>
<SMO_OK>76000</SMO_OK>
<NOVOR>0</NOVOR>
</PACIENT>
<PACIENT>
<ID_PAC>20348</ID_PAC>
<VPOLIS>3</VPOLIS>
<SMO_OK>76000</SMO_OK>
<NOVOR>0</NOVOR>
</PACIENT>
<PACIENT>
<ID_PAC>20562</ID_PAC>
<VPOLIS>3</VPOLIS>
<SMO_OK>76000</SMO_OK>
<NOVOR>0</NOVOR>
</PACIENT>
<PACIENT>
<ID_PAC>20797</ID_PAC>
<VPOLIS>3</VPOLIS>
<SMO_OK>76000</SMO_OK>
<NOVOR>0</NOVOR>
</PACIENT>
</dataroot>
Ключевое поле ID_PAC. Помогите программно объединить эти файлы что бы в результате получить вот такой файл:
<?xml version="1.0" encoding="UTF-8"?>
<dataroot>
<ZAP>
<N_ZAP>1</N_ZAP>
<PR_NOV>0</PR_NOV>
<ID_PAC>20266</ID_PAC>
 <PACIENT>
<ID_PAC>20266</ID_PAC>
<VPOLIS>3</VPOLIS>
<SMO_OK>76000</SMO_OK>
<NOVOR>0</NOVOR>
</PACIENT>
</ZAP>
<ZAP>
<N_ZAP>2</N_ZAP>
<PR_NOV>0</PR_NOV>
<ID_PAC>20348</ID_PAC>
<PACIENT>
<ID_PAC>20348</ID_PAC>
<VPOLIS>3</VPOLIS>
<SMO_OK>76000</SMO_OK>
<NOVOR>0</NOVOR>
</PACIENT>
</ZAP>
<ZAP>
<N_ZAP>3</N_ZAP>
<PR_NOV>0</PR_NOV>
<ID_PAC>20562</ID_PAC>
<PACIENT>
<ID_PAC>20562</ID_PAC>
<VPOLIS>3</VPOLIS>
<SMO_OK>76000</SMO_OK>
<NOVOR>0</NOVOR>
</PACIENT>
</ZAP>
<ZAP>
<N_ZAP>4</N_ZAP>
<PR_NOV>0</PR_NOV>
<ID_PAC>20797</ID_PAC>
<PACIENT>
<ID_PAC>20797</ID_PAC>
<VPOLIS>3</VPOLIS>
<SMO_OK>76000</SMO_OK>
<NOVOR>0</NOVOR>
</PACIENT>
</ZAP>
</dataroot>
Большое спасибо всем за помощь...

Решение задачи: «.NET 4.x Объединение двух файлов XML по ключам»

textual
Листинг программы
public class pacient
{
 
    /// <remarks/>
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true)]
    [System.Xml.Serialization.XmlRootAttribute(Namespace = "", IsNullable = false)]
    public class dataroot
    {
 
        private datarootPACIENT[] pACIENTField;
 
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("PACIENT")]
        public datarootPACIENT[] PACIENT
        {
            get
            {
                return this.pACIENTField;
            }
            set
            {
                this.pACIENTField = value;
            }
        }
    }
 
    /// <remarks/>
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true)]
    public class datarootPACIENT
    {
 
        private ushort iD_PACField;
 
        private byte vPOLISField;
 
        private uint sMO_OKField;
 
        private byte nOVORField;
 
        /// <remarks/>
        public ushort ID_PAC
        {
            get
            {
                return this.iD_PACField;
            }
            set
            {
                this.iD_PACField = value;
            }
        }
 
        /// <remarks/>
        public byte VPOLIS
        {
            get
            {
                return this.vPOLISField;
            }
            set
            {
                this.vPOLISField = value;
            }
        }
 
        /// <remarks/>
        public uint SMO_OK
        {
            get
            {
                return this.sMO_OKField;
            }
            set
            {
                this.sMO_OKField = value;
            }
        }
 
        /// <remarks/>
        public byte NOVOR
        {
            get
            {
                return this.nOVORField;
            }
            set
            {
                this.nOVORField = value;
            }
        }
    }
 
 
}

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

11   голосов , оценка 3.545 из 5
Похожие ответы