2009-11-17 3 views
55

ho incluso la seguente dichiarazione nel mio Visual C# applicazione console (Visual Studio 2005 .NET 2.0 Framework)Errore: Il nome 'ConfigurationManager' non esiste nel contesto corrente

using System.Configuration; 

e sto usando la seguente dichiarazione nella mia domanda:

ConfigurationManager.AppSettings["SomeStringOverHere"]; 

provo ad installare l'applicazione e ottengo l'errore: il nome 'ConfigurationManager' non esiste nel contesto attuale.

Qualsiasi aiuto per favore?

risposta

97

È necessario fare riferimento a System.Configuration.dll nel progetto e all'istruzione "using".

Gli spazi dei nomi sono (a volte) "divisi" tra gli assiemi. Ciò significa che i tipi in un singolo namespace sono effettivamente in diversi assembly.

Per determinare a quale assembly appartiene un tipo BCL o FCL, cercare su MSDN. Se guardi lo help for ConfigurationManager, vedrai che specifica nell'assembly System.Configuration guardando in alto in "Assembly". Questo è l'assemblea è necessario fare riferimento dal progetto

+7

Ho lo stesso problema, sto usando il "Uso using System.Configuration;" e anche il riferimento ... ancora non funziona ... devo fare riferimento anche all'utilizzo di System.Configuration.bll? dove posso trovarlo ... non è nel riferimento di aggiunta. Grazie! –

+1

Ho appena sprecato qualche minuto su questo problema prima di ricordare che ci sono due parti per la soluzione. Non solo è necessaria la direttiva using, ma è necessario anche un riferimento all'assembly System.Configuration stesso. –

20

Filippo era corretto aggiungendo il riferimento mi ha aiutato, ma io in realtà è andato e ha cercato di scaricare la DLL perché non sapevo che ci fosse un modo più semplice ...

  1. tasto destro del mouse su 'aggiungere i riferimenti' cartella nella soluzione Explorer
  2. selezionare la scheda 'NET'
  3. di ricerca per il riferimento .NET che si desidera aggiungere (in questo caso System.Configuration)

Questo post mi è stato di grande aiuto, grazie a tutti.

+1

4. Aggiungere il codice "Imports System.Configuration" – rsc

+1

OP sta già usando 'using System.Configuration;' OP necessario aggiungere riferimento a 'System.Configuration.dll' nel suo progetto come consigliato da @PhilipRieck. – nam

0

Ho affrontato lo stesso problema anche io.

Ho 2 progetti 1 principale e 1 DLL. Ho il file App.config nello stesso posto Ma la stringa di connessione è stata definita nella DLL ma non nel progetto principale che è eseguibile come principale. dopo aver aggiunto/spostato la stringa di connessione al file APP.CONFIG del progetto principale, il problema è stato risolto.

Spero che questo aiuti

+0

Spostare il parametro nel file di progetto principale "Config" Aggiungere il riferimento "System.Configuration" Fornire la dichiarazione "Using System.configuration" in alto –