日期:2014-05-18  浏览次数:21241 次

求助:无法从传输连接中读取数据: 连接已关闭
无法从传输连接中读取数据: 连接已关闭
有时候不会提示这个。。。

------解决方案--------------------
1、是不是用了DataReader
2、是不是没有用using(){}来控制数据库连接

3、大哥能不能信息给的多点儿啊,-_-\\
------解决方案--------------------
cmd.Connection = con;
con.Open(); int result;
cmd.CommandText = "insert into T_ComponentNeed(ProductName,ComponentID,[Count],Info) values(@ProductName,@ComponentID,@Count,@Info)";
cmd.Parameters.Add("@ProductName", OleDbType.WChar, 50).Value = dt.Rows[0].ItemArray[0].ToString();
cmd.Parameters.Add("@ComponentID", OleDbType.WChar, 50).Value = dt1.Rows[0].ItemArray[0].ToString();
cmd.Parameters.Add("@Count", OleDbType.Integer).Value = Convert.ToInt32(dt.Rows[i].ItemArray[3]);
cmd.Parameters.Add("@Info", OleDbType.WChar, 100).Value = dt.Rows[i].ItemArray[4].ToString();
result = cmd.ExecuteNonQuery();
cmd.Parameters.Clear();
con.Close();
------解决方案--------------------
DataReader应该在读取完后在调用Close,而不是返回DataReader后就立即调用Close
------解决方案--------------------
SqlConnection对象连接超时,自动关闭。