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 ).