Entity Framework 7 ha introdotto la possibilità mappare un tipo verso una colonna di tipo varchar tramite la serializzazione in JSON. La versione 8 ha completato questa funzionalità eliminando alcune limitazioni della versione precedente. La limitazione più importante che è stata eliminata riguarda la possibilità di eseguire filtri su proprietà di tipo lista. Per chiarire meglio, facciamo un esempio. Supponiamo di avere un oggetto Person con una proprietà Contacts. Questa proprietà contiene una lista di email, di telefoni, di indirizzi e così via.
Con Entity Framework 7, eseguire una query che cercava le persone che avessero un certo indirizzo era impossibile in quanto, sebbene il codice compilasse, a runtime si riceveva un'eccezione. Con Entity Framework questa limitazione è stata rimossa e quindi possiamo scrivere una query come la seguente.
var street = "via del corso"; var people = await context.People .Where(c => c.Contacts.Address.Any(s => s.Street == street)) .ToListAsync();
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Sfruttare i KeyedService in un'applicazione Blazor in .NET 8
Usare le collection expression per inizializzare una lista di oggetti in C#
Gestire la cancellazione di una richiesta in streaming da Blazor
Come migrare da una form non tipizzata a una form tipizzata in Angular
Utilizzare il trigger SQL con le Azure Function
Configurare il nome della run di un workflow di GitHub in base al contesto di esecuzione
Sostituire la GitHub Action di login su private registry
Personalizzare l'errore del rate limiting middleware in ASP.NET Core
Persistere la ChatHistory di Semantic Kernel in ASP.NET Core Web API per GPT
Ordinare randomicamente una lista in C#
Potenziare Azure AI Search con la ricerca vettoriale
Miglioramenti nelle performance di Angular 16
I più letti di oggi
- Centrare elementi in HTML tramite CSS
- Proteggere le risorse Azure con private link e private endpoints
- Utilizzare EF.Constant per evitare la parametrizzazione di query SQL
- Referenziare un @layer più alto in CSS
- Gestire i dati con Azure Cosmos DB Data Explorer
- Inference di dati strutturati da testo con Semantic Kernel e ASP.NET Core Web API