c# - net - visual studio basic guide



Il nome 'ConfigurationManager' non esiste nel contesto corrente (9)

Sto cercando di accedere a connectionStrings dal file di configurazione. Il codice è ASP.NET + C #. Ho aggiunto System.Configuration per fare riferimento e menzionato anche con l'utilizzo. Ma ancora non accetterebbe l'assemblea.

Sto usando VSTS 2008. Qualche idea su quale potrebbe essere la ragione?

Un'altra cosa strana è il nome dell'assembly mostrato come "System.configuration", un minuscolo c che non è il modo in cui i nomi vengono visualizzati per altri assembly di sistema.

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Configuration;

namespace Utility
{
    public class CommonVariables
    {
        public static String ConnectionString
        {
            get { return ConfigurationManager.ConnectionStrings["EmployeeEntities"].ConnectionString; }
        }  
    }  
}

config:

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <connectionStrings>
    <add name="qbankEntities" connectionString="metadata=res://*/qbankModel.csdl|res://*/qbankModel.ssdl|res://*/qbankModel.msl;provider=System.Data.SqlClient;provider connection string=&quot;Data Source=localhost;Initial Catalog=qbank;Persist Security Info=True;User ID=**;Password=****;MultipleActiveResultSets=True&quot;" providerName="System.Data.EntityClient" />
  </connectionStrings>
</configuration>

https://src-bin.com


Answer #1
  1. Fai clic con il tasto destro su Progetto
  2. Seleziona Manager NuGet Package
  3. Trova System.Configuration
  4. Seleziona System.Configuration.ConfigurationManager di Microsoft
  5. Installare

ora puoi:

using System.Configuration;

Answer #2

Aggiungendo questa risposta, poiché nessuna delle soluzioni suggerite funziona per me.

  1. Fare clic con il tasto destro sulla scheda dei riferimenti per aggiungere riferimento.
  2. Fare clic sulla scheda Assemblies
  3. Cerca 'System.Configuration'
  4. Clicca OK.

Answer #3

L'aggiunta di System.Configuration come riferimento a tutti i progetti risolverà questo problema.

  1. Vai a Project -> Add Reference

  2. Nella casella visualizzata, fai clic sulla scheda Elenco di All assemblies nell'elenco a sinistra.

  3. Nell'elenco centrale, scorrere fino a System.Configuration e assicurarsi che la casella sia selezionata.

  4. Fare clic su OK per applicare e ora sarà possibile accedere alla classe ConfigurationManager .


Answer #4

Nel progetto, fare clic con il tasto destro del mouse, Aggiungi riferimento ... , nella scheda .NET, individuare il nome del componente System.Configuration e fare clic su OK.

using System.Configuration dice al compilatore / IntelliSense di cercare in quel namespace per ogni classe che usi. Altrimenti, dovresti usare il nome completo ( System.Configuration.ConfigurationManager ) ogni volta. Ma se non si aggiunge il riferimento, tale spazio dei nomi / classe non verrà trovato da nessuna parte.

Si noti che una DLL può avere qualsiasi spazio dei nomi, quindi il file System.Configuration.dll potrebbe, in teoria, avere lo spazio dei nomi Some.Random.Name . Per chiarezza / coerenza di solito sono uguali, ma ci sono delle eccezioni.


Answer #5

Ok .. ha funzionato dopo il riavvio del VSTS. Il link suggeriva la soluzione per lo stesso problema. Vorrei averlo visto prima. :)


Answer #6

Per risolvere questo problema, vai a Solution Explorer e fai clic con il tasto destro del mouse e fai clic su aggiungi riferimento e scegli .net e trova system.configuration seleziona un clic ok


Answer #7

Se questo codice si trova su un progetto separato, come un progetto di libreria. Non forgeet per aggiungere riferimenti a system.configuration.


Answer #8

Se ricevi molti avvisi (nel mio caso 64 in una soluzione!) Come

CS0618: 'ConfigurationSettings.AppSettings' è obsoleto: 'Questo metodo è obsoleto, è stato sostituito da System.Configuration! System.Configuration.ConfigurationManager.AppSettings'

perché stai aggiornando un progetto precedente puoi risparmiare molto tempo come segue:

  1. Aggiungi System.Configuration come riferimento alla tua sezione References .
  2. Aggiungi le seguenti due istruzioni using all'inizio di ogni file di classe ( .cs ):

    using System.Configuration; using ConfigurationSettings = System.Configuration.ConfigurationManager;

Con questo cambia tutte le occorrenze di

ConfigurationSettings.AppSettings["mySetting"]

farà ora riferimento al gestore di configurazione corretto, non più quello deprecato, e tutti gli avvisi CS0618 andranno via immediatamente.

Naturalmente, tieni presente che si tratta di un attacco rapido. A lungo termine, dovresti prendere in considerazione il refactoring del codice.


Answer #9

Si potrebbe anche ottenere questo errore se si aggiunge un riferimento a un progetto diverso, non correlato per errore. Controlla se questo si applica a te.





visual-studio-2008