【发布时间】:2014-11-10 05:45:39
【问题描述】:
我在非本地服务器上收到此错误,当遇到此错误时,我重新上传了相关的类文件。在解决了这个问题后,但不是永久的。
错误:
executenonquery 需要一个开放且可用的连接。这 连接的当前状态为打开。
代码:
int n;
try
{
using (SqlCommand cmd = new SqlCommand())
{
cmd.Connection = DataConnection.Con;
cmd.CommandText = "sp_InsertUpdateDeleteValidationDate";
cmd.CommandType = CommandType.StoredProcedure; cmd.CommandTimeout = 0;
cmd.Parameters.AddWithValue("@Task", "CheckExist");
cmd.Parameters.AddWithValue("@id", 0);
cmd.Parameters.AddWithValue("@AdId", "");
cmd.Parameters.AddWithValue("@Username", "");
cmd.Parameters.AddWithValue("@DOE", DOE);
cmd.Parameters.AddWithValue("@ExpieryDate", DateTime.Now);
cmd.Parameters.AddWithValue("@DOR", DateTime.Now);
cmd.Parameters.Add("@flag", SqlDbType.Int).Direction = ParameterDirection.Output;
if (cmd.Connection.State == ConnectionState.Closed)
{
cmd.Connection.Open();
}
cmd.ExecuteNonQuery();
n = Convert.ToInt32(cmd.Parameters["@flag"].Value);
return n;
}
}
catch (SqlException Ex)
{
return 0;
}
【问题讨论】:
-
什么是DataConnection?
-
public class DataConnection { private static SqlConnection SqlCon = new SqlConnection(ConfigurationManager.ConnectionStrings["conn"].ConnectionString);公共静态 SqlConnection Con { 获取 { 返回 SqlCon; } } }
-
请将其添加到您的问题中,以便其可读
标签: c# connection executenonquery