不知道什么问题有时候会出现,有时候不会出现。出现错误刷新一下页面就好了,但是给客户部能是大黄页啊。
人多访问的时候也会出现这样的错误!!困扰我很久了, 大家帮我看看 我的DBHelper有没有这样的问题 :using System;
using System.Collections.Generic;
using System.Text;
using System.Data.SqlClient;
using System.Data;
using System.Configuration;
namespace HenryLi.Cqytl.SqlClient
{
public class DBHelper
{ //数据库连接属性
private static SqlConnection connection;
public static SqlConnection Connection
{
get
{
string connectionString = System.Configuration.ConfigurationManager.ConnectionStrings["connstr"].ConnectionString;
if (connection == null)
{
connection = new SqlConnection(connectionString);
connection.Open();
}
else if (connection.State == System.Data.ConnectionState.Closed)
{
connection.Open();
}
else if (connection.State == System.Data.ConnectionState.Broken)
{
connection.Close();
connection.Open();
}
return connection;
}
}
/// <summary>
/// 关闭数据库连接
/// </summary>
public static void CloseConn()
{
SqlConnection conn = Connection;
if (conn.State == System.Data.ConnectionState.Open)
conn.Close();
} /// <summary>
/// 执行无参SQL语句
/// </summary>
public static int ExecuteCommand(string safeSql)
{
SqlCommand cmd = new SqlCommand(safeSql, Connection);
int result = cmd.ExecuteNonQuery();
CloseConn();
return result;
}
/// <summary>
/// 执行带参SQL语句
/// </summary>
public static int ExecuteCommand(string sql, params SqlParameter[] values)
{
SqlCommand cmd = new SqlCommand(sql, Connection);
cmd.Parameters.AddRange(values);
int result = cmd.ExecuteNonQuery();
CloseConn();
return result;
}
/// <summary>
/// 执行无参SQL语句,并返回执行记录数
/// </summary>
public static int GetScalar(string safeSql)
{
SqlCommand cmd = new SqlCommand(safeSql, Connection);
int result = Convert.ToInt32(cmd.ExecuteScalar());
CloseConn();
return result;
}
/// <summary>
/// 执行有参SQL语句,并返回执行记录数
/// </summary>
public static int GetScalar(string sql, params SqlParameter[] values)
{
SqlCommand cmd = new SqlCommand(sql, Connection);
cmd.Parameters.AddRange(values);
int result = Convert.ToInt32(cmd.ExecuteScalar());
CloseConn();
return result;
}
/// <summary>
/// 执行无参SQL语句,并返回SqlDataReader
/// </summary>
public static SqlDataReader GetReader(string safeSql)
{
SqlCommand cmd = new SqlCommand(safeSql, Connection);
SqlDataReader reader = cmd.ExecuteReader();
return reader;
}
/// <summary>
/// 执行有参SQL语句,并返回SqlDataReader
/// </summary>
public static SqlDataReader GetReader(string sql, params SqlParameter[] values)
{
SqlCommand cmd = new SqlCommand(sql, Connection);
cmd.Parameters.AddRange(values);
SqlDataReader reader = cmd.ExecuteReader();
return reader;
} /// <summary>
/// 查询DataTable
/// </summary>
/// <param name="SqlStr"></param>
/// <returns></returns>
public static DataTable GetTable(string SqlStr)
{
SqlDataAdapter dap = new SqlDataAdapter(SqlStr, Connection);
DataSet ds = new DataSet();
dap.Fill(ds);
CloseConn();
return ds.Tables[0]; }
/// <summary>
/// 增删改
/// </summary>
/// <param name="SqlStr"></param>
/// <returns></returns>
public static bool Execute(string SqlStr)
{
SqlCommand cmd = new SqlCommand(SqlStr, Connection);
int result = cmd.ExecuteNonQuery();
CloseConn();
return result > 0;
}
}
}
/////////////////////////调用方法///////////////////////////////////////////
public IList<Sfwzxx> Select()
{
SqlDataReader dr = DBHelper.GetReader("select * from sfwzxx ");
IList<Sfwzxx> list = new List<Sfwzxx>();
while (dr.Read())
{
Sfwzxx sfwzxx = new Sfwzxx();
sfwzxx.Bh=((dr["Bh"])==DBNull.Value)?sfwzxx.Bh:Convert.ToInt32(dr["Bh"]);
sfwzxx.Fwqmc=dr["Fwqmc"].ToString();
list.Add(sfwzxx);
}
dr.Close();
DBHelper.CloseConn();
return list;
}
人多访问的时候也会出现这样的错误!!困扰我很久了, 大家帮我看看 我的DBHelper有没有这样的问题 :using System;
using System.Collections.Generic;
using System.Text;
using System.Data.SqlClient;
using System.Data;
using System.Configuration;
namespace HenryLi.Cqytl.SqlClient
{
public class DBHelper
{ //数据库连接属性
private static SqlConnection connection;
public static SqlConnection Connection
{
get
{
string connectionString = System.Configuration.ConfigurationManager.ConnectionStrings["connstr"].ConnectionString;
if (connection == null)
{
connection = new SqlConnection(connectionString);
connection.Open();
}
else if (connection.State == System.Data.ConnectionState.Closed)
{
connection.Open();
}
else if (connection.State == System.Data.ConnectionState.Broken)
{
connection.Close();
connection.Open();
}
return connection;
}
}
/// <summary>
/// 关闭数据库连接
/// </summary>
public static void CloseConn()
{
SqlConnection conn = Connection;
if (conn.State == System.Data.ConnectionState.Open)
conn.Close();
} /// <summary>
/// 执行无参SQL语句
/// </summary>
public static int ExecuteCommand(string safeSql)
{
SqlCommand cmd = new SqlCommand(safeSql, Connection);
int result = cmd.ExecuteNonQuery();
CloseConn();
return result;
}
/// <summary>
/// 执行带参SQL语句
/// </summary>
public static int ExecuteCommand(string sql, params SqlParameter[] values)
{
SqlCommand cmd = new SqlCommand(sql, Connection);
cmd.Parameters.AddRange(values);
int result = cmd.ExecuteNonQuery();
CloseConn();
return result;
}
/// <summary>
/// 执行无参SQL语句,并返回执行记录数
/// </summary>
public static int GetScalar(string safeSql)
{
SqlCommand cmd = new SqlCommand(safeSql, Connection);
int result = Convert.ToInt32(cmd.ExecuteScalar());
CloseConn();
return result;
}
/// <summary>
/// 执行有参SQL语句,并返回执行记录数
/// </summary>
public static int GetScalar(string sql, params SqlParameter[] values)
{
SqlCommand cmd = new SqlCommand(sql, Connection);
cmd.Parameters.AddRange(values);
int result = Convert.ToInt32(cmd.ExecuteScalar());
CloseConn();
return result;
}
/// <summary>
/// 执行无参SQL语句,并返回SqlDataReader
/// </summary>
public static SqlDataReader GetReader(string safeSql)
{
SqlCommand cmd = new SqlCommand(safeSql, Connection);
SqlDataReader reader = cmd.ExecuteReader();
return reader;
}
/// <summary>
/// 执行有参SQL语句,并返回SqlDataReader
/// </summary>
public static SqlDataReader GetReader(string sql, params SqlParameter[] values)
{
SqlCommand cmd = new SqlCommand(sql, Connection);
cmd.Parameters.AddRange(values);
SqlDataReader reader = cmd.ExecuteReader();
return reader;
} /// <summary>
/// 查询DataTable
/// </summary>
/// <param name="SqlStr"></param>
/// <returns></returns>
public static DataTable GetTable(string SqlStr)
{
SqlDataAdapter dap = new SqlDataAdapter(SqlStr, Connection);
DataSet ds = new DataSet();
dap.Fill(ds);
CloseConn();
return ds.Tables[0]; }
/// <summary>
/// 增删改
/// </summary>
/// <param name="SqlStr"></param>
/// <returns></returns>
public static bool Execute(string SqlStr)
{
SqlCommand cmd = new SqlCommand(SqlStr, Connection);
int result = cmd.ExecuteNonQuery();
CloseConn();
return result > 0;
}
}
}
/////////////////////////调用方法///////////////////////////////////////////
public IList<Sfwzxx> Select()
{
SqlDataReader dr = DBHelper.GetReader("select * from sfwzxx ");
IList<Sfwzxx> list = new List<Sfwzxx>();
while (dr.Read())
{
Sfwzxx sfwzxx = new Sfwzxx();
sfwzxx.Bh=((dr["Bh"])==DBNull.Value)?sfwzxx.Bh:Convert.ToInt32(dr["Bh"]);
sfwzxx.Fwqmc=dr["Fwqmc"].ToString();
list.Add(sfwzxx);
}
dr.Close();
DBHelper.CloseConn();
return list;
}
解决方案 »
- 请问如何将字符串转成指定格式的16进制字符串
- 谁知道C#中的值传递?
- help?help?help?help?help?help?
- 如何感知鼠标移进我的窗体,或移出我的窗体?
- split 如何分割\n的字符串
- 大家帮我看看下面代码怎么会 报这个错
- 我们是做Java的,但是现在有个项目一定要用C#来做C/S,求前辈指点
- 从数据库中读取时间格式的数据,结果变成1899-12-30,那么对时间进行查询时也不能够有结果
- C#初学者求助textbox.Invoke(resetMsgTxtCallBack, new object[] { textbox })
- 大婶进,一个关于AppDomain.Load的问题
- Silverlight版本问题
- C#调用excel模板后根据模板中自定义数据库字段同cell定位生成多sheet的excel文件
调整你的程序在 private 的情况下可以运行,错误就不会出现了