webentwicklung-frage-antwort-db.com.de

Zugriff auf die Datenbankverbindungszeichenfolge mit app.config in C # winform

Ich kann anscheinend nicht auf die Verbindungszeichenfolge app.config in meiner c # winforms-App zugreifen. 

app.config-Code

   <connectionStrings>
      <add name="MyDBConnectionString" providerName="System.Data.SqlClient"
            connectionString="Data Source=localhost;Initial Catalog=MySQLServerDB; Integrated Security=true" />
   </connectionStrings>  

C # -Code: 

SqlConnection conn = new SqlConnection();
conn.ConnectionString = System.Configuration.ConfigurationSettings.AppSettings["MyDBConnectionString"];    

Wenn ich den C # -Code versuche, erhalte ich eine Nachricht:
Warnung 1 'System.Configuration.ConfigurationSettings.AppSettings' ist veraltet: ' Diese Methode ist veraltet und wurde durch System.Configuration! System.Configuration.ConfigurationManager.AppSettings' ersetzt.

Wenn ich jedoch versuche, Folgendes zu verwenden: 

conn.ConnectionString = System.Configuration!System.Configuration.ConfigurationManager.AppSettings["MyDBConnectionString"];  

Ich erhalte eine Fehlermeldung: Nur Zuweisung, Aufruf, Inkrementieren, Dekrementieren und neue Objektausdrücke können als Anweisung verwendet werden.

18
Troy

Das ist alles was Sie brauchen:

System.Configuration.ConfigurationManager.ConnectionStrings["MyDBConnectionString"].ConnectionString;
27
CSharpened

Verwenden Sie ConfigurationManager anstelle von ConfigurationSettings. Es hat eine ConnectionStrings-Eigenschaft, die Sie für Verbindungszeichenfolgen im Abschnitt connectionStrings verwenden sollten:

ConfigurationManager.ConnectionStrings["MyDBConnectionString"].ConnectionString;
8
Oded

Sie verwenden die ConnectionStrings-Auflistung, nicht die AppSettings.

ConfigurationManager.ConnectionStrings["MyDbConnectionString"].ConnectionString;
6
Mark Sherretta
<?xml version="1.0" encoding="utf-8" ?>
<configuration>

<appSettings>

<add key="ConnectionString" value="Data Source=MY-PC;Initial Catalog=DB2013;User ID=sa;Password=MYSQL123" />

</appSettings>

</configuration>
using System.Configuration;
using System.Data.SqlClient;

namespace OnlineDelete_W2013
{
public partial class CommodityEdit : Form
{
   SqlConnection MyConnection = new SqlConnection(System.Configuration.ConfigurationSettings.AppSettings["ConnectionString"]);

    public CommodityEdit()
    {
        InitializeComponent();

    }

    private void button1_Click(object sender, EventArgs e)
    {
        try
        {
           MyConnection.Open();
        }
        catch (Exception)
        {

            throw;
        }
4
Anurag

versuche dies

 ConfigurationManager.ConnectionStrings["MyDbConnectionString"].ConnectionString; 
4
Enigma State
using (SqlConnection conn = new SqlConnection(System.Configuration.ConfigurationManager.ConnectionStrings["SQLConnection"].ToString()))
{
....(your code here) ...
}
4
Alex Muni
SqlConnection conn = new SqlConnection();
conn.ConnectionString = ConfigurationManager
    .ConnectionStrings["MyDBConnectionString"].ConnectionString;
try
{
    conn.Open();                
}
catch (Exception)
{
    throw;                    
}
2
user2309554

Die Antworten geben an, dass die Leitung verwendet werden soll 

ConfigurationManager.ConnectionStrings["MyDBConnectionString"].ConnectionString;

sind richtig.

Wenn ein Fehler angezeigt wird, der besagt, dass ConfigurationManager nicht vorhanden ist, liegt dies daran, dass Ihr Projekt nicht auf System.Configuration verwiesen hat.

Um dies in .NET Framework zu tun, klicken Sie in Projektmappen-Explorer in dem Projekt, in dem Sie diese Codezeile verwenden möchten, mit der rechten Maustaste in Referenzen und wählen Sie Referenz hinzufügen). .., dann wählen Sie Assemblies auf der linken Seite und Framework darunter. Wählen Sie System.Configuration in der Liste aus und klicken Sie auf Ok.

1
Edu

Darüber: 

Ich erhalte einen Fehler: Nur Zuweisung, Aufruf, Inkrementieren, Dekrementieren und neue Objektausdrücke können als Anweisung verwendet werden

Ich habe gerade einen Var so erklärt und das Problem gelöst:

var strConnection = System.Configuration.ConfigurationManager.ConnectionStrings["MyDBConnectionString"].ConnectionString;