Una delle funzionalità non supportate da Entity Framework Code-First è la possibilita di invocare una stored procedure tramite la Function nell'EDM. Per superare questa limitazione dobbiamo lanciare manualmente il comando di esecuzione della stored procedure tramite il metodo SqlQuery della classe Database esposta dal DbContext.
return ctx.Database.SqlQuery<Person> ("execute FindPersonByUsername {0}", username).First();
Come si vede dal seguente codice, per passsare i parametri alla stored procedure si usa la stessa sintassi del metodo Format della classe string.
E' importante notare che passare i parametri come nell'esempio mostrato non causa problemi di SQL Injection quindi questa tecnica si può usare senza alcun problema.
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Configurare dependabot per aggiornare le dipendenze di terze parti con GitHub Actions
Eseguire una GroupBy per entity in Entity Framework
Gestire i null nelle reactive form tipizzate di Angular
.NET Conference Italia 2023
Utilizzare la versione generica di EntityTypeConfiguration in Entity Framework Core
Creare form tipizzati con Angular
Inizializzare i container in Azure Container Apps
Modificare i metadati nell'head dell'HTML di una Blazor Web App
Eseguire query manipolando le liste contenute in un oggetto mappato verso una colonna JSON
Utilizzare politiche di resiliency con Azure Container App
Code scanning e advanced security con Azure DevOps
Load test di ASP.NET Core con k6