A DotNet Raider

My adventures in the .NET world!
posts - 49, comments - 12, trackbacks - 0

My Links

News

Website View Martino Bordin's profile on LinkedIn

Archives

Post Categories

giugno 2015 Blog Posts

Intercettare l'esecuzione di query con Entity Framework Code First

Recentemente ho avuto la necessità di intercettare e manipolare le query generate da Entity Framework. In particolare dovevo assicurarmi che non venissero estratte dal database le entità la cui proprietà Disabled fosse true (cancellazione logica). Dalla versione 6 è possibile innestarsi nella pipeline di EntityFramework ereditando dalla classe DefaultExpressionVisitor ed eseguento l'override del metodo Visit, che si occupa di generare l'expression tree che poi verrà convertito in SQL. Sostanzialmente, se il tipo di entità ha una proprietà Disabled, imposto un filtro verificando che non sia uguale a true. Per iniettare questo comportamento nella pipeline, basta implementare l'interfaccia IDbCommandTreeInterceptor e...

posted @ martedì 16 giugno 2015 11:21 | Feedback (0) | Filed Under [ O/RM SQL Server ]

Powered by:
Powered By Subtext Powered By ASP.NET