Domanda

Qual è l'equivalente di seguito in VB.net

      var list = (from x in xd.Descendants("product").Attributes("title") select 
      new { Title= x.Value}).ToList(); 

VB.net           Elenco dim = (da x in xd.Descendants (& Quot; prodotto & Quot;). Attributi (& Quot; titolo & Quot;) _                      Seleziona Nuovo (???)). ToList ()

Grazie

È stato utile?

Soluzione

New With { .Title = x.Value }

Altri suggerimenti

Vuoi davvero un elenco (di)? Se il tuo tipo anonimo ha una sola proprietà, non sarebbe più facile lavorare con un risultato che era un elenco (di stringa)?

Ecco la sintassi completa di vb.net per la tua query insieme ad alcuni XML con cui testarlo. In genere separo la chiamata .ToList, ma è principalmente per chiarezza. Si noti inoltre che con il codice seguente, la query non viene eseguita fino alla chiamata .ToList, quindi potrebbe essere utile separarli anche per tale motivo.

Dopo aver eseguito questo codice, ListA è di tipo List(Of <anonymous type>) e ListB di tipo List(Of String)

Dim testXml = <test>
                  <product title="Prod1"/>
                  <product title="Prod2"/>
                  <product title="Prod3"/>
              </test>

Dim queryA = From t In testXml...<product> _
             Select New With {.Title = t.@title}

Dim listA = queryA.ToList

Dim queryB = From t In testXml...<product> _
             Select t.@title

Dim ListB = queryB.ToList
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top