/// <summary> /// Obtiene una implementación de una consulta que puede cambiar según la base de datos. /// </summary> /// <remarks> /// Registro de versiones: /// /// 1.0 07/08/2015 Marcos Abraham Hernández Bravo (Ada Ltda.): versión inicial. /// </remarks> /// <param name="clase">Clase mediante reflexión, que contiene el método que desea acceder a la base de datos.</param> /// <param name="nombre">Nombre de la consulta en el archivo de configuración.</param> public DynamicQuery CrearQueryDinamica(Type clase, string nombre) { QueryTag consulta = DynamicQueryManager.ObtenerConsulta(nombre, conexion.Type, clase); Query aux = null; if (consulta.Tipo == "StoreProcedure") { aux = CrearProcedimientoAlmacenado(); } else if (consulta.Tipo == "Query") { aux = CrearQuery(); } else { throw new PreparacionException(string.Format("¡El tipo de consulta {0} no es válida!", consulta.Tipo)); } DynamicQuery retorno = new DynamicQuery(this, aux.Mapeador, aux.CreadorQuery); retorno.TipoBaseDatos = conexion.Type; retorno.Nombre = nombre; retorno.Tipo = consulta.Tipo; retorno.Consulta = consulta.Consulta; return(retorno); }