Bonjour,

Je souhaiterai récupérer les valeurs de noeud bien particulier dans un fichier XML dont voici l'architecture:

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
 
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<configuration>
  <SynchronizationMode>
    <Mode>Interval</Mode>
    <!--Choisir le mode de synchronisation:Interval,Daily-->
    <IntervalMinutes>1</IntervalMinutes>
    <!--En cas de Mode Interval, choisir pour value le délai en minute-->
    <ScheduledTime>16:22</ScheduledTime>
    <!--En cas de Mode Daily, choisir pour value l'heure de synchronisation du type HH:MM-->
  </SynchronizationMode>
  <FolderSetting>
    <SourceFolder>
      <SourcePath>C:\Temp</SourcePath>
      <!--En cas de fichier distant, mettre une adresse du type \SERVEUR\Dossier-->
      <SourceLogin></SourceLogin>
      <!--Laisser vide si dossier local-->
      <SourcePassword></SourcePassword>
      <!--Laisser vide si dossier local-->
      <FileType>.txt</FileType>
      <!--Choisir le type de fichier a transferer: .txt ,.csv-->
    </SourceFolder>
    <DestinationFolder>
      <DestFolder>C:\Temp2</DestFolder>
    </DestinationFolder>
  </FolderSetting>
  <ConversionSetting>
    <ConversionActive>YES</ConversionActive>
    <!--Pour déplacer sans conversion, mettre sur NO-->
    <NumberOfFields>8</NumberOfFields>
    <!--indiquer le nombre de champs dans le fichier d'origine-->
    <FieldDelimiter>|</FieldDelimiter>
    <!--Indiquer le séparateur de champ-->
    <Fields>
      <INSTRUMENT>
        <Instrument_IDField>1</Instrument_IDField>
        <!--Indiquer le Champ correspondant à l'identifiant de l'automate-->
      </INSTRUMENT>
      <QC>
        <QC_LotNumberField>2</QC_LotNumberField>
        <!--Indiquer le Champ correspondant au numero de lot-->
        <QC_LevelField>3</QC_LevelField>
        <!--Indiquer le Champ correspondant au niveau du QC-->
      </QC>
      <TEST>
        <Test_IDField>4</Test_IDField>
        <!--Indiquer le Champ correspondant à l'identifiant du test-->
        <Test_ResultField>5</Test_ResultField>
        <!--Indiquer le Champ correspondant au résultat du test-->
      </TEST>
      <DATE>
        <Date_Field>6</Date_Field>
        <!--Indiquer le Champ correspondant à la date-->
        <Date_Format>DD/MM/YYYY</Date_Format>
        <!--Indiquer le format de la date en mettant des X pour les caracteres à ne pas prendre en compte. ex: DDXMMXYYYY-->
      </DATE>
      <HOUR>
        <Hour_Field>7</Hour_Field>
        <!--Indiquer le Champ correspondant à l'heure-->
        <Hour_Format>HHMMSS</Hour_Format>
        <!--Indiquer le format de l'heure en mettant des X pour les caracteres a ne pas prendre en compte. ex: HHXMMXSS-->
      </HOUR>
    </Fields>
  </ConversionSetting>
</configuration>
Je souhaite recuperer la valeur d'un noued particulier, par exemple le noeud "Mode" au format string.

J'ai testé cela mais ça ne fonctionne pas...

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
 
XDocument doc = XDocument.Load(AppDomain.CurrentDomain.BaseDirectory + "\\Config.xml");
 
 Service1.mode = doc.Element("Mode").Value.ToString().ToUpper();
Une idée?