Le fournisseur ODP.Net d'Oracle utilise la liaison par position par défaut. Pour modifier le comportement de liaison par nom. Définissez la propriété BindByName sur true. Ensuite, vous pouvez ignorer la double définition des paramètres.
using(OracleCommand cmd = con.CreateCommand()) {
...
cmd.BindByName = true;
...
}