+ Rispondi al messaggio
Visualizzazione dei risultati da 1 a 3 su 3

Modificare la Connection String

  1. #1
    L'avatar di Kwisatz
    Kwisatz non è in linea Scolaretto
    Post
    118
    Like Inviati  
    0
    Like Ricevuti  
    0
    Ciao a tutti.

    Sto creando una applicazione desktop in C# che ha come base dati un database Access.
    Dopo aver collegato il database nel progetto il wizard di VS2019 mi ha creato il DATASET.

    Quando l'applicazione verrà distribuita il path del database sarà sicuramente diverso, per questo motivo ho creato una form all'avvio del database che testa la connessione e se fallisce chiede all'utente di fornire il nuovo percorso / nome DB tramite OpenFileDialog.

    La stringa di connessione personalizzata è salvata come variabile Property Settings, tipo stringa, ambito utente con il medesimo nome della stringa di connessione creata dal wizard (ambito applicazione) che ho provveduto ad eliminare.

    Di seguito il codice per l'update della stringa:

                    Properties.Settings.Default.DatiConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + Percorso;
                    Properties.Settings.Default.Save();
    
    Il tutto sembra funzionare:
    - Se cambio posizione al database l'applicativo se ne accorge.
    - Se fornisco un nuovo percorso i dati tornano ad essere consultabili e modificabili

    Però c'è un problema:
    - Il dataset nell'ambiente di sviluppo non è più consultabile, ovvero non permette più l'anteprima dei dati, il messaggio di errore è: "La connessione XXXXX per l'oggetto Setting non è stata trovata"
    - La variabile globale corrispondente alla connessione "Properties.Settings.Default.DatiConnectionStr ing" nelle "proprietà del progetto / impostazioni" non si aggiorna (ma ripeto i dati si vedono).

    Ho disabilitato la copia del database nella cartella della soluzione, scrivo e leggo sempre da un solo database.

    In una applicazione simile sviluppata in VB avevo risolto facendo l'override della variabile ConnectionString ambito applicazione, ma il C# non lo conosco bene e non so veramente come fare...

    C'è qualcuno che potrebbe darmi qualche consiglio in merito alle "best-practice" da attuare in questi casi ed aiutarmi a trovare una soluzione meno "raffazzonata"?

  2. #2
    Post
    1,900
    Blogs
    21
    Like Inviati  
    14
    Like Ricevuti  
    13
    Quote Originariamente inviato da Kwisatz Visualizza il messaggio
    Ciao a tutti.


    ...
    Il tutto sembra funzionare:
    - Se cambio posizione al database l'applicativo se ne accorge.
    - Se fornisco un nuovo percorso i dati tornano ad essere consultabili e modificabili

    Però c'è un problema:
    - Il dataset nell'ambiente di sviluppo non è più consultabile, ovvero non permette più l'anteprima dei dati, il messaggio di errore è: "La connessione XXXXX per l'oggetto Setting non è stata trovata"
    ...
    Ciao,
    non so se ho capito bene,
    ma a me il tuo problema sembra un "non problema".

    In ambiente di sviluppo metti il database dove se lo aspetta .... ed hai risolto
    ℹ️ Leggi di più su sspintux ...

  3. #3
    L'avatar di Kwisatz
    Kwisatz non è in linea Scolaretto
    Post
    118
    Like Inviati  
    0
    Like Ricevuti  
    0
    Quote Originariamente inviato da sspintux Visualizza il messaggio
    Ciao,
    non so se ho capito bene,
    ma a me il tuo problema sembra un "non problema".

    In ambiente di sviluppo metti il database dove se lo aspetta .... ed hai risolto
    Vero, hai perfettamente ragione.
    Tra l'altro ho anche capito che la variabile setting non viene aggiornata (o meglio non la vedo aggiornarsi) in quanto l'aggiornamento avviene nell'eseguibile.

+ Rispondi al messaggio

Potrebbero interessarti anche ...

  1. Modificare lunghezza String[]
    Da simonesalerno nel forum Java
    Risposte: 4
    Ultimo Post: 19-08-2011, 11:15
  2. connection string per archivio gestito con mySQL
    Da ceklo nel forum Visual Basic 6
    Risposte: 8
    Ultimo Post: 27-11-2009, 13:07
  3. [MsSQL]Connection String SQL Server
    Da dylan nel forum Microsoft SQL Server
    Risposte: 4
    Ultimo Post: 17-07-2009, 12:21
  4. connection string
    Da 02perla nel forum ASP 3, ASP .Net
    Risposte: 1
    Ultimo Post: 30-08-2008, 10:57
  5. [ASP.Net]Login e connection string
    Da perla0279 nel forum ASP 3, ASP .Net
    Risposte: 25
    Ultimo Post: 31-01-2008, 19:06