Ik probeer met Dapper ORM een query uit te voeren. Om dit te kunnen doen zijn een aantal parameters nodig, omdat het een soort prepared statement is. Deze parameters geef je mee door in de tweede parameter van de Query<T> methode een anonymous object te stoppen met daarin de naam + value van je parameter.
Echter probeer ik dynamisch een query op te bouwen. Zodra een bepaalde parameter gebruikt moet worden stop in de naam + waarde van deze parameter in een dictionary en verwerk ik in de SQL query een plek waar die parameter gebruikt moet worden.
Het grote probleem echter: ik heb dan een dictionary met een aantal parameters (meestal ~3), die ik dus in een anonymous object moet stoppen. Ik wil echter niet wélke parameters ik heb omdat dit dynamisch wordt opgebouwd. Er is keuze uit 5 parameters, en die kunnen allemaal willekeurig wel/niet aanwezig zijn en dus wel/niet in de query verwerkt worden.
Soms zou ik dus zoiets moeten krijgen:
En soms zoiets:
Ik heb al heel erg veel lopen zoeken naar hoe ik de key/values uit een dictionary in een anonymous object stop, ik heb een dynamic dictionary geprobeerd, ik heb het e.e.a. met LINQ geprobeer, maar ik kom er maar niet uit hoe ik nou dynamisch parameters mee kan geven aan m'n query.
Echter probeer ik dynamisch een query op te bouwen. Zodra een bepaalde parameter gebruikt moet worden stop in de naam + waarde van deze parameter in een dictionary en verwerk ik in de SQL query een plek waar die parameter gebruikt moet worden.
Het grote probleem echter: ik heb dan een dictionary met een aantal parameters (meestal ~3), die ik dus in een anonymous object moet stoppen. Ik wil echter niet wélke parameters ik heb omdat dit dynamisch wordt opgebouwd. Er is keuze uit 5 parameters, en die kunnen allemaal willekeurig wel/niet aanwezig zijn en dus wel/niet in de query verwerkt worden.
Soms zou ik dus zoiets moeten krijgen:
C#:
1
| var anon = new { a = A, b = B }; |
En soms zoiets:
C#:
1
| var anon = new { b = B, c = C, e = E }; |
Ik heb al heel erg veel lopen zoeken naar hoe ik de key/values uit een dictionary in een anonymous object stop, ik heb een dynamic dictionary geprobeerd, ik heb het e.e.a. met LINQ geprobeer, maar ik kom er maar niet uit hoe ik nou dynamisch parameters mee kan geven aan m'n query.