2 Stimmen

linq zu xml (c# zu vb.net konvertierung)

Wofür ist die VB.net-Syntax unten?

   var list = xd.Descendants("product")
   .Select(element =>new 
   { 
      Title = element.Attribute("title").Value,                   
      Duration = element.Element("duration").Value 
   }).ToList();

2voto

Denis Troller Punkte 7331

Wenn Sie VB verwenden, gibt es dafür einen syntaktischen Zucker:

Dim list = 
   From element In xd...<product>
   Select New With { _ 
       .Title = element.@title, _
       .Duration = element.<duration>.Value }

Das Schöne daran ist, dass, wenn Sie eine xsd für Ihr Dokument haben (und Sie können eine durch Visual Studio erstellen, indem Sie es von einem oder mehreren Xml-Dokumenten ableiten), können Sie es fast wie einen Namespace importieren und Visual Studio wird Ihnen Intellisense Vervollständigung beim Schreiben Ihrer Abfrage.

Einige Referenzen:

1voto

Keith Punkte 141163

Versuchen Sie dies:

Dim list = 
   From element In xd.Descendants("product")
   Select New With { _ 
       .Title = element.Attribute("title").Value, _
       .Duration = element.Element("duration").Value }

Sie müssen nicht die Linq-Syntax verwenden, sondern können einfach die zugrunde liegenden Erweiterungen nutzen:

Dim list = xd.Descendants("product"). _
    Select(Function(element) _ 
        New With { _ 
           .Title = element.Attribute("title").Value, _
           .Duration = element.Element("duration").Value _
        }). _
    ToList()

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X