IMO, der richtige Ansatz hier ist nicht um (gemäß der akzeptierten Antwort) das datenbankspezifische Parameterpräfix zu verwenden (also @
für SQL-Server :
für Orakel) - sondern:Verwenden Sie überhaupt kein Präfix . Letztendlich ist dies also:
il.Emit(OpCodes.Ldstr, prop.Name);
(usw.)
Insbesondere ein static
-Eigenschaft wäre schlecht, da sie Sie auf einen Anbieter pro AppDomain
beschränken würde .
Dapper wurde mit dieser Änderung aktualisiert. Es erkennt jetzt auch dynamisch BindByName
und setzt es entsprechend (alles ohne einen Verweis auf OracleCommand
zu benötigen ).