0

編集:ええ、ウォッチウィンドウが遅れているように見えました。以前の結果を提示し続けます。誰かがこの状況に遭遇しましたか?

編集:ブレークポイントを設定する場所を尋ねると、それは最後の行の後です。

ここに私のC#コードがあります

XmlDocument document = new XmlDocument();
document.Load(fileName);
id = document.GetElementsByTagName("id");

そして、これが私のXMLファイルです

<StudentList>
  <id>1</id>  
  <id>3</id>  
  <id>7</id>  
  <id>9</id>
  <id>8</id>
  <id>Invalid</id>  
</StudentList>

デバッグしようとするとid.Count、4 に等しくなりますが、6 であるべきだと思います。

デバッガーが 4 つの要素しかないと表示するのはなぜですか?

4

1 に答える 1

0

xml ファイルが上記のように見える場合、id.Countequals 6 を取得する必要があります。

これをやってみましょう:

  XmlDocument document = new XmlDocument();
  document.LoadXml(@"<StudentList>
                            <id>1</id>  
                            <id>3</id>  
                            <id>7</id>  
                            <id>9</id>
                            <id>8</id>
                            <id>Invalid</id>  
                        </StudentList>"); 

   id = document.GetElementsByTagName("id");
   Console.WriteLine(id.Count);

コンソールに「6」が表示されます。

idですから、提示されたコードの前に値を設定したと思います。値 4 は前の操作からのものです。

次の行にブレークポイントを設定します。

id = document.GetElementsByTagName("id");

イミディエイト ウィンドウで id を入力すると、次の結果が得られます。

id
{System.Xml.XmlElementList}
    [System.Xml.XmlElementList]: {System.Xml.XmlElementList}
    Count: 4

次に F10 を押すと、その行のコードが実行されます。もう一度 Immediate Window id を入力すると、次のようになります。

id
{System.Xml.XmlElementList}
    [System.Xml.XmlElementList]: {System.Xml.XmlElementList}
    Count: 6
于 2013-01-16T17:38:58.720 に答える