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.
Das ist alles was Sie brauchen:
System.Configuration.ConfigurationManager.ConnectionStrings["MyDBConnectionString"].ConnectionString;
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;
Sie verwenden die ConnectionStrings-Auflistung, nicht die AppSettings.
ConfigurationManager.ConnectionStrings["MyDbConnectionString"].ConnectionString;
<?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;
}
versuche dies
ConfigurationManager.ConnectionStrings["MyDbConnectionString"].ConnectionString;
using (SqlConnection conn = new SqlConnection(System.Configuration.ConfigurationManager.ConnectionStrings["SQLConnection"].ToString()))
{
....(your code here) ...
}
SqlConnection conn = new SqlConnection();
conn.ConnectionString = ConfigurationManager
.ConnectionStrings["MyDBConnectionString"].ConnectionString;
try
{
conn.Open();
}
catch (Exception)
{
throw;
}
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.
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;