Nello script #459 abbiamo visto che, a livello di mapping, possiamo impostare dei filtri da applicare a tutte le query su un determinato entity set. Questa tecnica viene molto usata per le delete logiche dove il filtro per scartare i record cancellati viene impostato a livello globale senza doverlo specificare per ogni query.
Tuttavia, esistono dei casi in cui il filtro non deve essere applicato. Per fare un esempio, se vogliamo che l'utente sia in grado di annullare la cancellazione di un record, dobbiamo mettergli a disposizione una maschera con i record cancellati. Questo significa che la query per mostrare i record cancellati deve eliminare il filtro preimpostato a livello di mapping per poi applicarne un altro. Per fare questo, dobbiamo usare il metodo IgnoreQueryFilters che, per la singola query, annulla qualunque filtro impostato a livello globale per l'entity.
var people = db.People .IgnoreQueryFilters() .Where(p => p.Deleted) .ToList();
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Eseguire una GroupBy per entity in Entity Framework
Utilizzare l'operatore GroupBy come ultima istruzione di una query LINQ in Entity Framework
Reactive form tipizzati con modellazione del FormBuilder in Angular
Sviluppare un'interfaccia utente in React con Tailwind CSS e Preline UI
Eseguire attività basate su eventi con Azure Container Jobs
Eseguire un metodo asincrono dopo il set di una proprietà in Blazor 8
Creare form tipizzati con Angular
Code scanning e advanced security con Azure DevOps
Miglioramenti agli screen reader e al contrasto in Angular
Utilizzare le Cache API di JavaScript per salvare elementi nella cache del browser
Creazione di componenti personalizzati in React.js con Tailwind CSS
Utilizzare i primary constructor in C#
I più letti di oggi
- Impostare un elemento come ridimensionabile tramite CSS
- Proteggersi dagli attacchi di Open Redirect in ASP.NET Core MVC
- Personalizzare l'errore del rate limiting middleware in ASP.NET Core
- Accedere alla console di una Azure Container App
- Modificare i metadati nell'head dell'HTML di una Blazor Web App
- Gli oggetti CallOut di Expression Blend 4.0
- SQL Server 2005 December CTP
- Sfruttare le nuove tipologie di input di HTML5 con ASP.NET 4.0
- Upload da una pagina web con Dundas Upload