Я ищу способ сравнить файлы XML (примеры ниже) и создать список, содержащий xpath для различий в двух файлах, чтобы затем я мог проверить, что изменилось.
это можно сделать в Linq или мне нужно будет использовать патч MS Diff, я действительно хотел бы сделать все это на C # без каких-либо дополнительных Dlls.
Или я должен просто зациклить один XML-файл и сравнить его с другим, но тогда, если я сделаю это, я могу пропустить новые или удаленные узлы!
Файл A
<info>
<Retrieve>
<LastNameInfo>
<LNameNum>1</LNameNum>
<NumPeople>1</NumPeople>
<NameType/>
<LName>TEST</LName>
</LastNameInfo>
<Segment>
<SegNum>1</SegNum>
<Comment>A test</Comment>
</Segment>
<Segment>
<SegNum>2</SegNum>
<Dt>20110910</Dt>
<Comment>B test</Comment>
</Segment>
</Retrieve>
</info>
Файл B:
<info>
<Retrieve>
<LastNameInfo>
<LNameNum>1</LNameNum>
<NameType/>
<LName>TESTING</LName>
</LastNameInfo>
<Segment>
<SegNum>1</SegNum>
<Status>HS</Status>
<Comment>A test</Comment>
</Segment>
<Segment>
<SegNum>2</SegNum>
<Dt>20110910</Dt>
<Comment>COULD I USE LINQ</Comment>
</Segment>
</Retrieve>
</info>
Вывод списка XPath
/info/Retrieve/LastNameInfo/NumPeople
/info/Retrieve/LastNameInfo/LName
/info/Retrieve/Segment[1]/Status
/info/Retrieve/Segment[2]/Comment