-5

次の形式の xml ファイルがいくつかあります。

<!--?xml version="1.0" standalone="yes"?-->
<details>
  <Classes>
    <class>5</class>
    <section>A</class>
  </Classes>
  <student>
    <firstname>Avijeet</firstname>
    <lastname>Roy</lastname>
    <roll>01</roll>
  </student>
  <student>
    <firstname>Saurav</firstname>
    <lastname>Das</lastname>
    <roll>02</roll>
  </student>
   <Classes>
    <class>10</class>
    <section>A</class>
  </Classes>
  <student>
    <firstname>Saumitra</firstname>
    <lastname>Bain</lastname>
    <roll>10</roll>
  </student>
  <student>
    <firstname>Tarun</firstname>
    <lastname>Sing</lastname>
    <roll>11</roll>
  </student>
</details>

今、私は自分のasp.netページのようなデータグリッドが欲しい

Class   Section fname    lname  roll
5   A   Avijeet  Roy    01
5   A   Saurav   Das    02
10  A   Saumitra Bain   10
10  A   Tarun    Sing   11

いろいろ探しましたが、似たようなものは見つかりませんでした。私はC#が初めてです

4

2 に答える 2

6

あなたが持っているxmlがあなたの要件に合った正しい形式であるとは思いません。それは次のようでなければなりません:

<details>
 <Classes>
      <Class>
        <class>5</class>
        <section>A</class>
        <student>
         <firstname>Avijeet</firstname>
         <lastname>Roy</lastname>
         <roll>01</roll>
       </student>
       <student>
        <firstname>Saurav</firstname>
        <lastname>Das</lastname>
        <roll>02</roll>
      </student>
      </Class>

       <Class>
        <class>10</class>
        <section>A</class>
        <student>
         <firstname>Saumitra</firstname>
         <lastname>Bain</lastname>
         <roll>10</roll>
       </student>
       <student>
        <firstname>Tarun</firstname>
        <lastname>Sing</lastname>
        <roll>11</roll>
      </student>
      </Class>
  </Classes> 
</details>

この後、LINQ to XML を使用できます。

例えば。:

XDocument doc = XDocument.Load(xmlPath);
IEnumerable<XElement> selectors = from elements in doc.Elements("details").Elements("Classes").Elements("Class")
                                  select elements;
于 2012-08-23T11:53:50.293 に答える
0

XMLファイルの構造を反映する型付きデータセットを作成し、XMLファイルからデータをロードすることができます。次に、データバインディングを実行できます。また、LinqtoXMLを使用することもできます。

于 2012-08-23T11:50:23.447 に答える