L'operatore LIKE è utilizzato all'interno di SQL nella clausola WHERE per ricercare elementi la cui colonna ha un valore corrispondente al pattern specificato.
Con Entity Framework Core, questa funzione era richiamabile solamente tramite l'utilizzo dell'extension method FromSql che non aveva il bisogno di tradurre la query e la eseguiva in modo diretto sul database. Altrimenti, qualora avessimo voluto mantenere la sintassi di Linq, saremmo stati costretti ad utilizzare il metodo string.Contains, che però non è così stringente e non applica gli stessi pattern.
Entity Framework Core 2 introduce la funzione specifica Like che sopperisce a tutti i problemi elencati nel paragrafo precedente e può essere utilizzata con semplicità:
var filtered = ctx.People.Where(p => EF.Functions.Like(p.FirstName, "Ma%"));
In questo caso specifico, all'interno della variabile filtered ci saranno tutte le persone il cui nome inizia con "Ma" ma non ha una lunghezza specifica. Questa query viene tradotta in SQL:
SELECT .[Id], .[FirstName] FROM [People] WHERE .[FirstName] LIKE N'Ma%';
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Trasformare qualsiasi backend in un servizio GraphQL con Azure API Management
Eseguire attività basate su eventi con Azure Container Jobs
Taggare la output cache in base al routing in ASP.NET Core
Cache policy su route groups di Minimal API in ASP.NET Core 7
Gestire condizioni complesse in JavaScript
Gestire undefined e partial nelle reactive forms di Angular
Utilizzare flat e flatMap per appiattire array innestati in array
Intercettare gli eventi di creazione degli oggetti con Entity Framework 7
Utilizzare le collection expression in C#
Ricevere avvisi su metriche dei server Azure Arc
Configurare policy CORS in Azure Container Apps
Eseguire query verso tipi non mappati in Entity Framework Core
I più letti di oggi
- ecco tutte le novità pubblicate sui nostri siti questa settimana: https://aspit.co/wkly buon week-end!
- Utilizzare i primary constructor in C#
- Installare le Web App site extension tramite una pipeline di Azure DevOps
- tra poco è la volta di #spa, #javascript e #angularjs per lo sviluppatore #aspnet con @sm15455: https://aspit.co/web15-live #aspilive
- ecco tutte le novità pubblicate sui nostri siti questa settimana: https://aspit.co/wkly buon week-end!
- #vs2013, #windowsserver 2012 r2, #sqlserver 2014 e #tfs 2013 annunciati a #msteched. approfondimenti in seguito: https://aspit.co/amo