448 Stimmen

Verbindungszeichenfolge aus App.config abrufen

var connection = ConnectionFactory.GetConnection(
    ConfigurationManager.ConnectionStrings["Test"]
    .ConnectionString, DataBaseProvider);

Und dies ist meine App.config:

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
    <connectionStrings>
        <add name="Test" connectionString="Data Source=.;Initial Catalog=OmidPayamak;Integrated Security=True" providerName="System.Data.SqlClient" />
    </connectionStrings>
</configuration>

Aber wenn mein Projekt läuft, ist dies mein Fehler:

Objektreferenz nicht auf eine Instanz eines Objekts gesetzt.

17voto

Gobind Mandal Punkte 221
//Get Connection from web.config file
public static OdbcConnection getConnection()
{
    OdbcConnection con = new OdbcConnection();
    con.ConnectionString = System.Configuration.ConfigurationManager.ConnectionStrings["con"].ConnectionString;
    return con;     
}

7voto

vishu9219 Punkte 745

Probieren Sie es aus

string abc = ConfigurationManager.ConnectionStrings["CharityManagement"].ConnectionString;

4voto

Talha Imam Punkte 900

Das hat bei mir funktioniert:

string connection = System.Configuration.ConfigurationManager.ConnectionStrings["Test"].ConnectionString;

Ausgänge:

Datenquelle=.;Ursprungskatalog=OmidPayamak;IntegrierteSicherheit=True"

3voto

OREO Punkte 31

1) Erstellen Sie ein neues Formular und fügen Sie dies hinzu:

Imports System.Configuration
Imports Operaciones.My.MySettings

Public NotInheritable Class frmconexion

    Private Shared _cnx As String
    Public Shared Property ConexionMySQL() As String
        Get
            Return My.MySettings.Default.conexionbd
        End Get
        Private Set(ByVal value As String)
            _cnx = value
        End Set
    End Property

End Class

Wenn Sie dann die Verbindung nutzen wollen, tun Sie dies in Ihrem Formular:

 Private Sub frmInsert_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

Dim cn As New MySqlConnection(frmconexion.ConexionMySQL)
cn.open()

und das war's. Sie sind dann mit der DB verbunden und können Dinge tun.

Dies ist für vb.net, aber die Logik ist die gleiche.

3voto

Andrew Punkte 662

Es ist möglich, dass der OP in dieser Frage versucht, eine App.Config innerhalb einer dll zu verwenden.

In diesem Fall versucht der Code tatsächlich, auf die App.Config der ausführbaren Datei zuzugreifen und nicht auf die DLL. Da der Name nicht gefunden wird, erhalten Sie eine Null zurück, daher die angezeigte Ausnahme.

Der folgende Beitrag könnte hilfreich sein: ConnectionString aus app.config einer DLL ist null

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X