/// <summary>
/// SQL执行语句
/// </summary>
public abstract class SqlHelper
{
private static readonly string strConnection = @"server=20101222-2147;database=school;Persist Security Info=True;uid=sa;pwd=hequanshui";//连接字符串没有问题,我做的其他网页也是用这个
private static int nCommandTimeOut = DefauleCommandTimeOut; /// <summary>
/// 连接服务器超时时间
/// </summary>
public static int DefauleCommandTimeOut
{
get { return 30; }
} /// <summary>
/// 数据库连接属性
/// </summary>
public static string Connection
{
get { return strConnection; }
} /// <summary>
/// 数据库超时时间属性
/// </summary>
public static int CommandTimeOut
{
get { return nCommandTimeOut; }
set { nCommandTimeOut = value; }
}
执行到 public DataSet DsSelect(string _Name, bool _Order, string _Id)
{
//查询语句
StringBuilder sqlSentence = new StringBuilder(Select);
//查询参数
StringBuilder sqlCondition = new StringBuilder();
//查询结果
DataSet DsSelect = new DataSet();
if (!string.IsNullOrEmpty(_Name))
{
sqlCondition.Append(string.Format("StudentName='{0}' AND ", _Name));
}
if (!string.IsNullOrEmpty(_Id))
{
sqlCondition.Append(string.Format("Id='{0}' AND ", _Id));
}
if (sqlCondition.Length > 0)
{
sqlCondition.Remove(sqlCondition.Length - 4, 4);
if (_Order)
{
sqlCondition.Append(" order by id Desc");
}
sqlSentence.Append(" WHERE " + sqlCondition.ToString());
}
else
{
if (_Order)
{
sqlCondition.Append(" order by id Desc");
sqlSentence.Append(sqlCondition.ToString());
}
}
//执行SQL语句
DsSelect = SqlHelper.ExecuteDataSet(sqlSentence.ToString(), null);//这一行指向null报错,提示“实例失败”
return DsSelect;
}到了这一句DsSelect = SqlHelper.ExecuteDataSet(sqlSentence.ToString(), null);就报错提示“用户代码未处理InvalidOperationException”“实例失败”,不知道是什么问题,是源码本身有问题还是我这边配置的问题啊
public static DataSet ExecuteDataSet(string cmdText, params SqlParameter[] cmdParms)
{
DataSet ds;
SqlCommand cmd = new SqlCommand();
SqlConnection conn = new SqlConnection(strConnection);
try
{
PrepareCommand(cmd, conn, null, CommandType.Text, cmdText, cmdParms);
DataSet dataset = new DataSet();
using (SqlDataAdapter da = new SqlDataAdapter())
{
da.SelectCommand = cmd;
da.Fill(dataset);
}
conn.Close();
cmd.Parameters.Clear();
ds = dataset;
}
catch
{
conn.Close();
throw;
}
finally
{
if (conn != null)
{
conn.Dispose();
}
}
return ds;
}