我正在尝试连接到我的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。为什么?
答案 0 :(得分:3)
您的方法定义了一个本地var conn
,而不是分配给您在类级别定义的那个。省略var
:
conn = new NpgsqlConnection(connstring);
答案 1 :(得分:-1)
从以下语句中删除关键字“ var”:
var conn = new NpgsqlConnection(connstring);