12

ボタンをクリックするだけでテキストボックスからデータベースに書き込むことを学んでいます。ファイルで NorthWind データベースへの接続文字列を指定しましたweb.config。ただし、コードビハインドで接続文字列にアクセスできません。

これは私が試したものです。

protected void buttontb_click(object sender, EventArgs e)
{
    System.Configuration.Configuration rootwebconfig = System.Web.Configuration.WebConfigurationManager.OpenWebConfiguration("/Mohtisham");
    System.Configuration.ConnectionStringSettings constring;
    constring = rootwebconfig.ConnectionStrings.ConnectionStrings["northwindconnect"];
    SqlConnection sql = new SqlConnection(constring);

    sql.Open();
    SqlCommand comm = new SqlCommand("Insert into categories (categoryName) values ('" + tb_database.Text + "')", sql);
    comm.ExecuteNonQuery();
    sql.Close();
}

のツールチップ エラーが表示される

SqlConnection sql = new SqlConnection(constring);

なので

System.data.SqlClient.Sqlconnection.Sqlconnection(string) に無効な引数があります。

web.configから接続文字列をロードしたいconstring

4

4 に答える 4

11

inファイルにaNameを与えるだけで、次のことができます。ConnectionStringweb.config

web.config:

<add name="ConnectionStringName"  connectionString=YourServer"; Initial Catalog=YourDB; Integrated Security=True"/>

コードビハインド:

SqlConnection connection = new SqlConnection(ConfigurationManager.ConnectionStrings["ConnectionStringName"].ToString());
于 2013-03-21T06:39:20.283 に答える
8

これConnectionStringsは、コレクションがConnectionStringSettingsオブジェクトのコレクションであるためですが、SqlConnectionコンストラクターにはstringパラメーターが必要です。したがって、単独で通過することはできませんconstring

代わりにこれを試してください。

SqlConnection sql = new SqlConnection(constring.ConnectionString);
于 2013-03-21T06:27:44.630 に答える
4

これを試して

readonly SqlConnection con = new SqlConnection(ConfigurationManager.ConnectionStrings["northwindconnect"].ToString());
于 2013-03-21T06:31:16.720 に答える
0

次のように web.config ファイルに直接アクセスするのではなく、関数を作成することをお勧めします

    public static string GetConfigurationValue(string pstrKey)
    {
        var configurationValue = ConfigurationManager.AppSettings[pstrKey];
        if (!string.IsNullOrWhiteSpace(configurationValue))
            return configurationValue;

        throw (new ApplicationException(
            "Configuration Tag is missing web.config. It should contain   <add key=\"" + pstrKey + "\" value=\"?\"/>"));

    }

そして、あなたのアプリケーションでこの機能を使用してください

于 2013-03-21T06:36:56.543 に答える