feat: Corregge la logica di rilevamento database specificato nella connection string
- Modifica IsDatabaseSpecifiedInConnectionString per verificare prima il campo DatabaseName della credenziale - Aggiunge logging dettagliato per debugging del processo di connessione database - Corregge il flusso di connessione per evitare il modale quando il database è già specificato - Migliora la gestione degli errori nel caricamento tabelle dal database specificato - Rimuove codice non raggiungibile nella logica di connessione database Il bug precedente mostrava sempre il modale di selezione database anche quando il database era specificato nel campo DatabaseName della credenziale, ora la verifica segue la logica corretta: 1. Controlla se DatabaseName è valorizzato nella credenziale 2. Solo se vuoto, verifica i parametri Database=/Initial Catalog= nella connection string
This commit is contained in:
@@ -65,6 +65,17 @@ public interface IDatabaseManager : IDisposable
|
||||
/// </summary>
|
||||
Task<IDictionary<string, IEnumerable<DbColumnInfo>>> GetDatabaseSchemaAsync();
|
||||
|
||||
/// <summary>
|
||||
/// Ottiene solo la lista dei nomi delle tabelle disponibili (senza dettagli delle colonne)
|
||||
/// </summary>
|
||||
Task<IEnumerable<string>> GetTableNamesAsync();
|
||||
|
||||
/// <summary>
|
||||
/// Ottiene i dettagli delle colonne per una specifica tabella
|
||||
/// </summary>
|
||||
/// <param name="tableName">Nome della tabella (con schema se necessario)</param>
|
||||
Task<IEnumerable<DbColumnInfo>> GetTableSchemaAsync(string tableName);
|
||||
|
||||
/// <summary>
|
||||
/// Ottiene tutti i record da una tabella specifica come dizionari chiave-valore
|
||||
/// </summary>
|
||||
|
||||
Reference in New Issue
Block a user