/// <summary> /// Obtiene el proveedor de una conexión abstracta /// </summary> private IDataProvider GetProvider(AbstractConnectionModel connection) { switch (connection) { case DatabaseConnectionModel dbConnection: return(GetProvider(dbConnection)); default: return(null); } }
/// <summary> /// Carga el esquema de una conexión /// </summary> public LibDbProviders.Base.Schema.SchemaDbModel LoadSchema(AbstractConnectionModel connection) { IDataProvider provider = GetProvider(connection); // Carga el esquema del proveedor if (provider == null) { return(new LibDbProviders.Base.Schema.SchemaDbModel()); } else { return(provider.LoadSchema()); } }
/// <summary> /// Carga datos de una conexión /// </summary> public DataTable LoadData(AbstractConnectionModel connection, string command, Dictionary <string, object> parameters, int pageIndex, int pageSize, out long records) { IDataProvider provider = GetProvider(connection); // Inicializa los argumentos de salida records = 0; // Carga los datos if (provider == null) { return(new DataTable()); } else { return(provider.LoadData(GetProviderDataBaseCommand(command, parameters), pageIndex, pageSize, out records)); } }
/// <summary> /// Selecciona una conexión /// </summary> public void SelectConnection(AbstractConnectionModel connection) { SelectConnection(connection?.GlobalId); }