Bonjour
j'ai le fichier XML suivant
<resources xmlns="http://www.kuka.com/schemas/kxr/2009">
<module name="Appli_KF">
<uiText key="MessageSUB1">
<text xml:lang="de-DEV">No Pressure</text>
<text xml:lang="en-DEV">No Pressure</text>
<text xml:lang="fr-DEV">Manque presence air</text>
<text xml:lang="es-DEV">spain</text>
</uiText>
<uiText key="MessageSUB2">
<text xml:lang="de-DEV">robot vartung stellung</text>
<text xml:lang="en-DEV">Robot in parking position</text>
<text xml:lang="fr-DEV">Robot au repli</text>
</uiText>
</module>
</resources>
et je voudrais recuper l'info du message en fonction de la langue
j'ai essayer avec System.Xml.Linq; mais je n'arrive pas a grand chose
XmlDocument xmlDoc = new XmlDocument();
//Load xml
string filename = @"C:\KRC\DATA\Appli_KF.kxr";
XDocument xdoc = XDocument.Load(filename);
// XDocument xdoc = XDocument.Load(@"C:\KRC\DATA\Test.kxr");
XElement xElement = XElement.Load(filename);
//recupere l attribut xmlns ex xmlns="http://www.kuka.com/schemas/kxr/2009">
XNamespace p = xElement.Attribute("xmlns").Value;
var lv1s = (from lv1 in xdoc.Descendants(p + "module")
where ((string)lv1.Attribute("name") == "Appli_KF")
select new
{
Header = lv1.Attribute("name").Value,
Mess = (
from uiText in lv1.Descendants(p + "uiText")
where ((string)uiText.Attribute("key")== "MessageSUB1")
select new DroitTFS
{
Name = uiText.Attribute("key").Value,
}
).ToList<DroitTFS>()
}
);
//Loop through results
foreach (var lv2 in lv1s)
{
MessageBox.Show(lv2.Header +":"+ lv2.Mess[0].Name );
}
quelqu'un peut m'aider
Jean louis