Negli script precedenti abbiamo visto come EF 8 permetta di mappare liste di tipi semplici (primitive collection). In questo script andremo a vedere come sia possibile scrivere query che dichiarano filtri basati su una lista di tipi semplici. Riprendendo l'esempio degli script precedenti dove una persona ha più soprannomi, proviamo a filtrare tutte le persone che hanno un determinato soprannome. Come possiamo vedere nel seguente script, non ci sono nuovi comandi o tecniche da imparare, il metodo di filtro è sempre lo stesso che adotteremmo con una normale navigation property.
var nickname = "Pippo";
var people = await context.People
.Where(e => e.Nicknames.Any(n => n == nickname))
.ToListAsync();Un altro esempio che possiamo fare è ricercare le persone che abbiano più di un nickname usando la proprietà Count.
var people = await context.People
.Where(e => e.Nicknames.Count > 1)
.ToListAsync();Si possono utilizzare liste di tipi semplici non solo per filtrare, ma anche per le projection tramite il metodo Select. In questo esempio torniamo solamente il nome e i primi due soprannomi di ogni persona.
var people = await context.People
.Select(c => new {
c.Name
Nicknames = c.Nicknames.Take(2)
})
.ToListAsync();Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
DevSecOps per .NET: dalla teoria alla pratica
Integrare OpenAI tramite Aspire
Utilizzare ExecuteUpdate per aggiornare colonne JSON in Entity Framework
Realizzare un accordion con gli elementi HTML details e summary
How to be a DevOps engineer in the AI era
Filtrare i dati in ASP.NET Core usando OpenTelemetry su Azure Monitor
Nuove validazioni Form Blazor
Keynote .NET Conference Italia 2025
Utilizzare @property per animare nativamente un oggetto HTML tramite CSS
Utilizzare i named query filter di Entity Framework
Evitare la compressione degli artefatti in un workflow di GitHub
Effettuare la ricerca di testo nascosto in una pagina web con Javascript


