-2

I have an XML file
perhaps i usually do more than 100 query every minute with C# and XMLDatareader, that's why i am thinking to add an Index on it, is it possible? or Indexes are allowed only on DB like sqlserver/mysql?
thanks
Here my XML file, with the first record:

 <?xml version="1.0" standalone="yes"?>
<NewDataSet>
  <xs:schema id="NewDataSet" xmlns="" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
    <xs:element name="NewDataSet" msdata:IsDataSet="true" msdata:UseCurrentLocale="true">
      <xs:complexType>
        <xs:choice minOccurs="0" maxOccurs="unbounded">
          <xs:element name="Traduzioni">
            <xs:complexType>
              <xs:sequence>
                <xs:element name="Path" type="xs:string" />
                <xs:element name="IT" type="xs:string" minOccurs="0" />
                <xs:element name="EN" type="xs:string" minOccurs="0" />
                <xs:element name="FR" type="xs:string" minOccurs="0" />
                <xs:element name="PT" type="xs:string" minOccurs="0" />
              </xs:sequence>
            </xs:complexType>
          </xs:element>
          <xs:element name="extension_ref">
            <xs:complexType>
              <xs:sequence>
                <xs:element name="idKey" type="xs:string" minOccurs="0" />
                <xs:element name="Reference" type="xs:string" minOccurs="0" />
                <xs:element name="Ordine" type="xs:string" minOccurs="0" />
                <xs:element name="Dizione_EN" type="xs:string" minOccurs="0" />
                <xs:element name="Dizione_IT" type="xs:string" minOccurs="0" />
                <xs:element name="Dizione_PT" type="xs:string" minOccurs="0" />
                <xs:element name="Dizione_FR" type="xs:string" minOccurs="0" />
                <xs:element name="Dizione_SP" type="xs:string" minOccurs="0" />
                <xs:element name="idKey_old" type="xs:string" minOccurs="0" />
              </xs:sequence>
            </xs:complexType>
          </xs:element>
        </xs:choice>
      </xs:complexType>
      <xs:unique name="Constraint1" msdata:PrimaryKey="true">
        <xs:selector xpath=".//Traduzioni" />
        <xs:field xpath="Path" />
      </xs:unique>
    </xs:element>
  </xs:schema>

  <Traduzioni>
    <Path>N.Ordine</Path>
    <IT>N.Ordine</IT>
    <EN>Order number</EN>
    <FR>Numéro de commande</FR>
    <PT>No de ordem:</PT>
  </Traduzioni>  
4

1 回答 1

1

这看起来像是某种翻译文件。

您最好将 XML 加载到内存中,例如 a Dictionary<string, Dictionary<string, string>>,由目标语言键入,然后由原始字符串键入。(这是相当琐碎的事情,所以我不会在这里发布代码。)

这样你就可以访问翻译了

translations["EN"]["N.Ordine"]
于 2018-06-18T11:25:07.527 回答