IMO, den korrekte tilgang her er ikke at (i henhold til det accepterede svar) bruge det databasespecifikke parameterpræfiks (altså @ for sql-server, : for oracle) - men snarere:brug ingen præfiks slet . Så i sidste ende er dette:
il.Emit(OpCodes.Ldstr, prop.Name);
(osv)
Især en static egenskaben ville være dårlig, da den ville begrænse dig til én leverandør pr. AppDomain .
Dapper er blevet opdateret med denne ændring. Den registrerer nu også dynamisk BindByName og indstiller det i overensstemmelse hermed (alt uden at kræve en reference til OracleCommand ).