/ / Come impostare il file app.config per l'assembly corrente in C #? - c #, app-config

Come impostare il file app.config per l'assembly corrente in C #? - c #, app-config

Ho integrato una DLL con un servizio (exe). La dll ha il suo file app.config. Ma il codice all'interno della dll per qualsiasi riferimento chiave / valore, si riferisce sempre al file di configurazione di exe anziché al file di configurazione di dll. In che modo rendere il file di configurazione della dll come corrente da utilizzare solo quando indicato dal codice dll?

risposte:

6 per risposta № 1

Una DLL (o file di libreria) non può avere il proprio file di configurazione. Lo farà SEMPRE utilizzare i file di configurazione delle applicazioni "hosting".

L'intero punto di una DLL è che può essere utilizzatoda molte applicazioni diverse e non ha la configurazione stessa. Invece il suo "host" conterrà le informazioni di configurazione, quindi questo è "di progettazione".


1 per risposta № 2

Quando la soluzione contiene più di un progetto, è possibile aggiungere app.config in qualsiasi progetto; ma quando si compila il codice per generare l'output finale, si ottiene un solo file di configurazione denominato <exeFileName>.exe.config . Questo è l'unico file di configurazione che verrà letto dal framework WinForms quando l'applicazione è in esecuzione.

Se le DLL (assembly in .NET) specificano il proprio file di configurazione, tali file di configurazione non diventeranno parte dell'output finale (i rispettivi assembly).

Per includere le impostazioni dai file di configurazione specifici del progetto, dovrai inserire tali voci di configurazione (appSettings, connectionString, ecc.) Nel file di configurazione dell'applicazione principale.

Le DLL possono anche leggere dal file di configurazione dell'applicazione principale. Quindi, quando si inseriscono tali voci in <exeFileName>.exe.config file, tutte le DLL caricate possono leggere i valori dal file.

Nota: Fare attenzione a utilizzare nomi univoci per le chiavi per ciascuna DLL poiché i valori di configurazione vengono letti utilizzando le chiavi.