¿Existe una forma genérica de pasar un DbType como parámetro?
-
27-10-2019 - |
Pregunta
Necesito ejecutar esta consulta parametrizada, o una equivalente:
ALTER TABLE tableName ADD COLUMN ? ?
con los parámetros como el nombre de la nueva columna y el tipo de datos. Por ejemplo, si paso 'Nombre' DbType.Double, entonces se resolvería como:
ALTER TABLE tablename ADD COLUMN Name FLOAT
No puedo simplemente crear una asignación entre DbType y el nombre del tipo de campo, ya que el código funciona en la interfaz IDbConnection
, no en una implementación específica.¿Existe una forma genérica de hacer esto?En este momento tengo un mapeo separado para cada implementación, lo que obviamente está lejos de ser ideal.
Solución
Tendrá que hacer esto de forma dinámica y puede tener sentido buscar una traducción específica del proveedor (para que los proveedores puedan proporcionar sus propias asignaciones).