Domanda

Ho una tabella in cui un record simile a questo

varchar(255) Name  
varchar(255) Text  
varchar(255) Value 

Nome è il nome DDL, Il testo è ciò che viene visualizzato, e il valore viene restituito al momento della selezione. Ci sono tra uno e venti opzioni per ogni nome. Senza iterazione se ogni opzione come un cursore, c'è un modo per tirare fuori una lista di oggetti, uno per ognuna unica Nome DDL, utilizzando Linq e C #?

Un campione dei dati:

Beds   '4 (10)'  4
Beds   '5 (1)'   5
Beds   '7 (1)'   7
Baths  'NA (13)' NULL
Baths  '0 (1)'   0
Baths  '1 (13)'  1

stavo pensando di fare un select esterna per ottenere i nomi unici, poi un selezionare interno per ottenere l'elenco delle opzioni per esso, per poi tornare il set come un elenco di una serie di liste.

È stato utile?

Soluzione

Certo, basta usare group ... by

var query = from item in context.TableName
            group item by item.Name;

In alternativa, senza un'espressione di query:

var query = context.TableName.GroupBy(item => item.Name);

Il risultato sarà un IQueryable<IGrouping<string, ItemType>>. Ogni elemento nel risultato sarà un raggruppamento :. Una chiave e una sequenza di elementi con quella chiave

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top