c# - net - configurationmanager




從App.config獲取連接字符串 (12)

1)創建一個新表單並添加:

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

那麼當你想使用連接時,請用你的形式做這件事:

 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()

這就是它。 你將連接到數據庫,並可以做的東西。

這是為vb.net,但邏輯是相同的。

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

這是我的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>

但是當我的項目運行時,這是我的錯誤:

你調用的對像是空的。


你不能只是做到以下幾點:

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

您的程序集還需要對System.Configuration.dll的引用


同時檢查你是否在你的引用下包含了System.Configuration DLL。 沒有它,你將無法訪問System.Configuration命名空間中的ConfigurationManager類。


嘗試一下

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

我引用System.Configuration庫和我有同樣的錯誤。 調試文件沒有他們的app.config,手動創建這個文件。 錯誤是,我解決了這個問題,在調試文件夾中復製文件“appname.exe.config”。 IDE不是創建該文件。


我通過使用索引來讀取字符串並逐個檢查來解決問題。 使用名稱閱讀仍然會出現相同的錯誤。
我在開發C#窗口應用程序時遇到了問題,在我的asp.net應用程序中沒有遇到問題。 在這個環境中一定有一些不對的東西。


由於這是非常常見的問題,我從Visual Studio準備了一些屏幕截圖,以便通過4個簡單步驟輕鬆完成。


看起來問題不在於引用,您將connectionstring設置為null,所以請確保您已將值添加到配置文件中,您的運行項目意味著首先啟動/執行的主程序/庫。


這對我有效:

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

輸出:

數據源=;初始目錄= OmidPayamak; IntegratedSecurity = True“


首先將System.Configuration的引用添加到您的頁面。

using System.Configuration;

然後根據你的app.config獲取連接字符串如下。

string conStr = ConfigurationManager.ConnectionStrings["Test"].ToString();

這就是現在你手中的連接字符串,你可以使用它。


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

string sTemp = System.Configuration.ConfigurationManager.ConnectionStrings["myDB In app.config"].ConnectionString;






app-config