Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/csharp-4.0/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
ConnectionString属性尚未初始化。C#web应用程序中的错误_C#_C# 4.0_Csharpcodeprovider - Fatal编程技术网

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