0

好的,我有一个List我想从 Xlm 文件中添加一些数据的地方。我的List样子是这样的:

List<Tuple<string,string,string>> BookList;

我的 Xml 文件如下所示:

<Book>
  <Name>BookName</Name>
  <Genre>BookGenre</Genre>
  <Year>BookYear</Year>
</Book>

我想要的是从 xml 文件中读取,每次读取时都XmlNodeType.Text将其添加到列表中。但是我该如何添加让我们说当我在第一个XmlNodeType.Text字符串中找到第一个时,然后当我XmlNodeType.Text在列表的第二个字符串中读取第二个时......我现在正在做的是:

int count = 0;
string name,genre,year;
 while (reader.Read())
 {
    if (count.Equals(3))
    {
       BookList.Add(Tuple.Create(name,genre,year));
       count = 0;
    }//if

    switch (reader.NodeType)
    {
       case XmlNodeType.Text:
       switch (count)
       {
          case 0:
             name = reader.Value;
             count++;
             break;
          case 1:
             genre = reader.Value;
             count++;
             break;
          case 2:
             year = reader.Value;
             count++;
             break;

        }//switch
        break;
    }//switch
 }//while

有没有办法避免使用这种丑陋的东西switch(count)

4

1 回答 1

0

您还可以为节点使用 foreach 循环而不是开关计数

于 2013-08-22T02:50:05.247 回答