ConnectionString属性尚未初始化。C#web应用程序中的错误
这是我的密码:ConnectionString属性尚未初始化。C#web应用程序中的错误,c#,c#-4.0,csharpcodeprovider,C#,C# 4.0,Csharpcodeprovider,这是我的密码: using System; using System.Web.UI.WebControls; using System.Data.SqlClient; using System.Data; using System.Configuration; namespace EmployeeSys { public partial class WebForm1 : System.Web.UI.Page { strin
using System;
using System.Web.UI.WebControls;
using System.Data.SqlClient;
using System.Data;
using System.Configuration;
namespace EmployeeSys
{
public partial class WebForm1 : System.Web.UI.Page
{
string query, constr;
SqlConnection con;
SqlCommand com;
public void connection()
{
SqlConnection connstr = new SqlConnection(ConfigurationManager.ConnectionStrings["ContactConnectionString"].ConnectionString);
//constr = ConfigurationManager.ConnectionStrings["ems"].ToString();
con = new SqlConnection(constr);
con.Open();
}
protected void Page_Load(object sender, EventArgs e)
{
if (IsPostBack == false)
{
gedata();>
}
Label1.Visible = false;
}
protected void empsave(object sender, EventArgs e)
{
connection();
HiddenField1.Value = "Insert";
query = "EmpEntry";
com = new SqlCommand(query, con);
com.CommandType = CommandType.StoredProcedure;
com.Parameters.AddWithValue("@Action",HiddenField1.Value).ToString();
com.Parameters.AddWithValue("@FName", TextBox1.Text).ToString();
com.Parameters.AddWithValue("@MName", TextBox2.Text).ToString();
com.Parameters.AddWithValue("@LName", TextBox3.Text).ToString();
int result= com.ExecuteNonQuery();
con.Close();
if (result >= 1)
{
Label1.Text = "Records Are Added";
}
}
public void gedata()
{
connection();
HiddenField1.Value = "view";
query = "EmpEntry";
com = new SqlCommand(query, con);
com.CommandType = CommandType.StoredProcedure;
com.Parameters.AddWithValue("@Action", HiddenField1.Value).ToString();
SqlDataAdapter da = new SqlDataAdapter(com);
DataSet ds = new DataSet();
da.Fill(ds);
GridView1.DataSource = ds;
GridView1.DataBind();
con.Close();
}
protected void edit(object sender, GridViewEditEventArgs e)
{
GridView1.EditIndex= e.NewEditIndex;
gedata();
}
protected void canceledit(object sender, GridViewCancelEditEventArgs e)
{
GridView1.EditIndex = -1;
gedata();
}
protected void update(object sender, GridViewUpdateEventArgs e)
{
connection();
int id=int.Parse(GridView1.DataKeys[e.RowIndex].Value.ToString());
HiddenField1.Value = "update";
query = "EmpEntry";
com = new SqlCommand(query, con);
com.CommandType = CommandType.StoredProcedure;
com.Parameters.AddWithValue("@Action", HiddenField1.Value).ToString();
com.Parameters.AddWithValue("@FName", ((TextBox)GridView1.Rows[e.RowIndex].Cells[3].Controls[0]).Text.ToString());
com.Parameters.AddWithValue("@MName", ((TextBox)GridView1.Rows[e.RowIndex].Cells[4].Controls[0]).Text.ToString());
com.Parameters.AddWithValue("@LName", ((TextBox)GridView1.Rows[e.RowIndex].Cells[5].Controls[0]).Text.ToString());
com.Parameters.AddWithValue("@id", SqlDbType.Int).Value = id;
com.ExecuteNonQuery();
con.Close();
GridView1.EditIndex = -1;
gedata();
}
protected void delete(object sender, GridViewDeleteEventArgs e)
{
connection();
int id = int.Parse(GridView1.DataKeys[e.RowIndex].Value.ToString());
HiddenField1.Value = "Delete";
query = "EmpEntry";
com = new SqlCommand(query, con);
com.CommandType = CommandType.StoredProcedure;
com.Parameters.AddWithValue("@Action", HiddenField1.Value).ToString();
com.Parameters.AddWithValue("id", SqlDbType.Int).Value = id;
com.ExecuteNonQuery();
con.Close();
gedata();
}
}
}
我已经在web.config
中添加了连接字符串
错误:
ConnectionString属性尚未初始化
在这一行:
con.open();
这里是错误:
SqlConnection connstr = new SqlConnection(ConfigurationManager.ConnectionStrings["ContactConnectionString"].ConnectionString);
// constr = ConfigurationManager.ConnectionStrings["ems"].ToString();
con = new SqlConnection(constr);
con.Open();
您需要将ConnectionString作为字符串传递给SqlConnection
对象或将其分配给string
但您正在初始化SqlConnection
对象
这样做:
con= new SqlConnection(ConfigurationManager.ConnectionStrings["ContactConnectionString"].ConnectionString);
con.Open();
或:
并且记住,在DB操作后,不要忘记使用以下命令关闭连接:
con.Close()
在这一行中,您尝试将SqlConnection
对象作为参数传递给SqlConnection
构造函数。那是错误的
将连接字符串作为参数传递给SqlConnection
。喜欢
string connstr = ConfigurationManager.ConnectionStrings["ContactConnectionString"].ConnectionString;
SqlConnection con = new SqlConnection(constr);
还可以使用来处理
SqlConnection
和SqlCommand
对象。您应该尝试提出一个问题。
con = new SqlConnection(constr);
string connstr = ConfigurationManager.ConnectionStrings["ContactConnectionString"].ConnectionString;
SqlConnection con = new SqlConnection(constr);