Parsen von html mit dem HTML-Agility-Pack und Linq

Habe ich den folgenden HTML -

(..)
<tbody>
 <tr>
  <td class="name"> Test1 </td>
  <td class="data"> Data </td>
  <td class="data2"> Data 2 </td>
 </tr>
 <tr>
  <td class="name"> Test2 </td>
  <td class="data"> Data2 </td>
  <td class="data2"> Data 2 </td>
 </tr>
</tbody>
(..)

Informationen, die ich habe ist der name, der => also "Test1" & "Test2". Was ich wissen möchte ist, wie bekomme ich die Daten in "Daten" und "data2", basierend auf dem Namen ich habe.

Derzeit bin ich mit:

var data =
    from
        tr in doc.DocumentNode.Descendants("tr")
    from   
        td in tr.ChildNodes.Where(x => x.Attributes["class"].Value == "name")
    where
        td.InnerText == "Test1"
    select tr;

Aber ich bekomme {"Object reference not set to an instance of an object."} wenn ich versuche, um sich in data

Genau, was wollen Sie tun? Und was ist der code tut, dass Sie nicht wollen?
Hehe, sorry, ich habe vergessen hinzuzufügen, ich bin das hinzufügen es jetzt
Können Sie uns erklären, was Ihr Fehler ist? Oder das, was Sie erwarten zu geschehen, dass das nicht passiert?
Ich habe mich verändert meine Frage, hoffentlich, um es ein bisschen mehr Verständnis.
In deinem Beispiel den text in dein tds hat eine vorausgehende und nachfolgende Leerzeichen, in der Erwägung, dass die Zeichenfolge, die Sie suchen, nicht.

InformationsquelleAutor Timo Willemsen | 2011-01-06

Schreibe einen Kommentar