Dove devo conservare i dati utente di configurazione? Specificatamente il percorso del file di dati?

StackOverflow https://stackoverflow.com/questions/2511050

Domanda

Ho un app con un db SQLite, e ho bisogno la possibilità per l'utente di spostare il file di dati e indicare l'applicazione per cui si trasferisce a. Ho usato Entity Framework per creare il modello, e per impostazione predefinita mette la stringa di connessione nel file app.config. Da quello che ho letto, se posso apportare modifiche alla stringa di connessione c'è allora non avranno effetto fino a quando l'applicazione viene riavviato. Che sembra un po 'goffo per il mio uso. Vedo come posso init il mio modello e passare una stringa personalizzata, ma io sono sicuro che cosa la migliore pratica è dove memorizzare prefrences utente di base di questo tipo? Ini, del Registro di sistema, da qualche altra parte? Non voglio che l'utente deve "aprire" il file ogni volta, proprio quando trasferisce e quindi l'applicazione cercherò di automobile aperta da allora in poi.

È stato utile?

Soluzione

Dai un'occhiata alla Impostazioni applicazione per una panoramica di come creare le impostazioni di configurazione specifiche per l'utente, che possono essere salvati in un file user.config. Il Registro di sistema è più o meno abbandonato in favore del nuovo file di configurazione del sistema basato su XML.

Altri suggerimenti

Non è necessario utilizzare la stringa di connessione viene aggiunto al app.config. È possibile saltare l'aggiunta in realtà, nella procedura guidata EDMX.

È quindi necessario semplicemente la stringa di connessione vivere ovunque si sceglie e si passa nella tua costruttore ObjectContext.

È possibile inserire la stringa di connessione in un file esterno, il Registro di sistema, o dovunque si sceglie.

Potrebbe avere senso di avere una classe statica che genera la stringa di connessione, e afferra la posizione del file da una fonte comune che l'utente può cambiare (cioè Registro di sistema, file su disco, variabile d'ambiente, ecc.)

Si potrebbe creare una classe impostazioni e poi puntate in un file XML con un nome predfined in una posizione che è impostato tramite il file app.config. È quindi possibile controllare la frequenza con cui il file è stato letto nella memoria da soli. L'unica timeyou avrebbe bisogno di riavviare l'applicazione è stata se la posizione delle impostazioni del file modificato.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top