Bonjour,
Je suis débutant en c#
Je travail sur un outils d'automatisation de tests(Ranorex), et je voudrai comparer 2fichiers xml, qui ne sont pas identique.
L'idée est de vérifier qu'on trouve bien les données du fichier source parmi les données du fichier en sorti.
Le probleme est que mon code ne me remonte rien, pourtant qu'il y a pas d'erreurs. merci de m'aider
Voici mon code:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
using System;
using System.Collections.Generic;
using System.Text;
using System.Text.RegularExpressions;
using System.Drawing;
using System.Threading;
using WinForms = System.Windows.Forms;
 
using Ranorex;
using Ranorex.Core;
using Ranorex.Core.Testing;
using System.IO;
using System.Xml;
 
namespace RECONCILIATION.Recording.AUTRE
{
    public partial class ComparerFichierXlmInjecteFichierXmlReponse
    {
        /// <summary>
        /// This method gets called right after the recording has been started.
        /// It can be used to execute recording specific initialization code.
        /// </summary>
        private void Init()
        {
            // Your recording specific initialization code goes here.
        }
 
        public void CompareInputAndOutputFiles()
        {
			string source = FileSourcePath;
			string actual = FileActualPath;
 
			if (MatchXML(source, actual))
			{
			   Console.WriteLine("Matches");
			}
			else
			{
			   Console.WriteLine("Does not match");
			   Console.ReadLine();
			}
        } 
 
		static bool MatchXML(string FileSourcePath, string FileActualPath)
		{				
		string sourceClePCE, sourceIdExterneDemandeConso, sourceDateDebutDemandeConso, sourceDateFinDemandeConso, sourcePasDemandeConso;
		string idExterneDemandeConso ="", dateDebutDemandeConso ="", dateFinDemandeConso ="", pasDemandeConso ="";
 
			using (XmlReader xr = XmlReader.Create(FileSourcePath))
			{
			    // Get ClePCE
			    xr.ReadToFollowing("clePCE");
				sourceClePCE = xr.ReadString();
 
				// Get IdExterneDemandeConso
				xr.ReadToFollowing("idExterneDemandeConso");
				sourceIdExterneDemandeConso = xr.ReadString();
 
				// Get DateDebutDemandeConso
				xr.ReadToFollowing("dateDebutDemandeConso");
				sourceDateDebutDemandeConso = xr.ReadString();
 
				// Get DateFinDemandeConso
				xr.ReadToFollowing("dateFinDemandeConso");
				sourceDateFinDemandeConso = xr.ReadString();
 
				// Get PasDemandeConso
				xr.ReadToFollowing("pasDemandeConso");
				sourcePasDemandeConso = xr.ReadString();
 
				Report.Log(ReportLevel.Info, sourceClePCE);
 
			 }
 
			using (XmlReader xr = XmlReader.Create(FileActualPath))
			{				
				while (!xr.EOF)
				{
				  xr.ReadToFollowing("clePCE");
				}
 
				if (xr.ReadString() == sourceClePCE)
				{
					// Get actual IdExterneDemandeConso
					xr.ReadToFollowing("idExterneDemandeConso");
					idExterneDemandeConso = xr.ReadString();
 
					// Get actual DateDebutDemandeConso
					xr.ReadToFollowing("dateDebutDemandeConso");
					dateDebutDemandeConso = xr.ReadString();
 
					// Get actual DateFinDemandeConso
					xr.ReadToFollowing("dateFinDemandeConso");
					dateFinDemandeConso = xr.ReadString();
 
					// Get actual PasDemandeConso
					xr.ReadToFollowing("pasDemandeConso");
					pasDemandeConso = xr.ReadString();
 
					Report.Log(ReportLevel.Info, sourceIdExterneDemandeConso);
				}
 
				if (sourceIdExterneDemandeConso == idExterneDemandeConso && sourceDateDebutDemandeConso == dateDebutDemandeConso && sourcePasDemandeConso == pasDemandeConso && sourceDateFinDemandeConso == dateFinDemandeConso)
				{
				  return true; // Matches
				}
 
				// Does not match
				{
				  return false;
				}
 
      	 	 }
 
   		 }
	}
}