xml med namespace..
Hej,Jeg har nogle problemer med at læse fra en xml fil.
Jeg vil gerne have læst <fmt-def ..> ud fra dens "id" og det samme med <trans-unit ..>
Jeg har prøver alle muligheder men kan ikke få nogle af dem til at virke.
Det eneste jeg kan få til at virke er læsning af "source-language" under "xliff/file"
Nogle som kan hjælpe?
XML filen:
<?xml version="1.0" encoding="utf-8"?>
<xliff version="1.2" xmlns="urn:oasis:names:tc:xliff:document:1.2">
<file source-language="en-GB">
<header>
<fmt-defs xmlns="http://test.com/1.0">
<fmt-def id="1">
<value key="Italic">False</value>
<value key="Bold">False</value>
<value key="Underline">False</value>
<value key="Strikethrough">False</value>
<value key="FontName">Times New Roman</value>
<value key="FontSize">12</value>
<value key="TextColor">Black</value>
</fmt-def>
</fmt-defs>
</header>
<body>
<trans-unit id="22" translate="yes">
<source>Test String</source>
</trans-unit>
</body>
</file>
</xliff>
min kode:
XmlDocument xmlDoc = new XmlDocument();
xmlDoc.XmlResolver = null;
xmlDoc.Load(@"C:\temp\test2.xml");
XmlNamespaceManager nsmgr = new XmlNamespaceManager(xmlDoc.NameTable);
nsmgr.AddNamespace("xliff", "urn:oasis:names:tc:xliff:document:1.2");
Console.WriteLine("source-language: " + xmlDoc.SelectSingleNode("//xliff:file/@source-language", nsmgr).FirstChild.Value);
XmlNode transData = xmlDoc.SelectSingleNode("//trans-unit[@id='22']", nsmgr);
Console.WriteLine(transData.InnerXml);