连接属性尚未初始化-Npgsql C#

时间:2018-11-13 15:12:58

标签: c# npgsql

我正在尝试连接到我的postgres数据库,但是卡在Connection属性上的消息尚未初始化。

我正在使用开放连接类

 class DBConnection
        {
            public static NpgsqlConnection conn = null;

            public void Connection_open()
            {
                string connstring = String.Format("Host=localhost;Database=Dokument_API;Username=postgres;Password=******");
                var conn = new NpgsqlConnection(connstring);
                conn.Open();
            }
            public void Connection_close()
            {
                conn.Close();
            }
        }

在表单中,我有此代码

private void button1_Click(object sender, EventArgs e)
        {
            //Open connection from class
            DBConnection NewConnection = new DBConnection();
            NewConnection.Connection_open();

            NpgsqlCommand cmd = new NpgsqlCommand("INSERT INTO anrop (exempelanrop,beskrivning,exempelsvar) VALUES ('" + exempelanrop_text.Text + "','" + beskrivning_text.Text + "','" + exempelsvar_text.Text + "')", DBConnection.conn);
            cmd.ExecuteNonQuery();
            MessageBox.Show("Uppgifter sparade");
        }

我陷入了cmd.ExecuteNonQuery。为什么?

2 个答案:

答案 0 :(得分:3)

您的方法定义了一个本地var conn,而不是分配给您在类级别定义的那个。省略var

 conn = new NpgsqlConnection(connstring);

答案 1 :(得分:-1)

从以下语句中删除关键字“ var”:
var conn = new NpgsqlConnection(connstring);