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
Usare una container image come runner di GitHub Actions
Gestire undefined e partial nelle reactive forms di Angular
Sviluppare un'interfaccia utente in React con Tailwind CSS e Preline UI
Evitare la command injection in un workflow di GitHub
Sfruttare lo stream rendering per le pagine statiche di Blazor 8
Implementare il throttling in ASP.NET Core
Supportare il sorting di dati tabellari in Blazor con QuickGrid
Filtrare e rimuovere gli elementi dalla cache del browser tramite le API JavaScript
Verificare la provenienza di un commit tramite le GitHub Actions
Evitare la script injection nelle GitHub Actions
Utilizzare i primary constructor di C# per inizializzare le proprietà
Creare alias per tipi generici e tuple in C#
I più letti di oggi
- Miglioramenti nelle performance di Angular 16
- Ottimizzare le performance delle collection con le classi FrozenSet e FrozenDictionary
- HTML5 con CSS e JavaScript
- ecco tutte le novità pubblicate sui nostri siti questa settimana: https://aspit.co/wkly buon week-end!
- Ottimizzazione dei block template in Angular 17
- Disabilitare automaticamente un workflow di GitHub (parte 2)