IMO, a abordagem correta aqui é não para (conforme a resposta aceita) use o prefixo do parâmetro específico do banco de dados (assim
@ para sql-server, : para oráculo) - mas sim:não use nenhum prefixo de forma alguma . Então, no final das contas, isso é:il.Emit(OpCodes.Ldstr, prop.Name);
(etc)
Em particular, um
static propriedade seria ruim, pois limitaria você a um fornecedor por AppDomain . Dapper foi atualizado com esta mudança. Agora também detecta dinamicamente
BindByName e configura de acordo (tudo sem precisar de uma referência ao OracleCommand ).