我使用C#+SQL 出现一个错误 帮忙给我看看 谢谢啦
小弟用C#编写了一个人事管理系统 在定义类的时候出现一个问题,不知道怎么解决,希望大家多帮棒小弟啦!小弟感激不尽!
using System;
using System.Data ;
using System.Data.SqlClient;
using System.ComponentModel;
namespace 人力资源管理系统
{
/// <summary>
/// DataBase 的摘要说明。
/// </summary>
public class DataBase : IDisposable
{
public SqlConnection SqlConn;
public static string sConn = "Persist Security;Integrated Security = SSPI;database=master;server=localhost;Connect Timeout=30 ";
public void Dispose()
{
Dispose( true );
GC.SuppressFinalize( true );
}
protected void Dispose( bool disposing )
{
if ( disposing != true )
{
return;
}
if ( SqlConn != null )
{
SqlConn.Dispose();
SqlConn = null;
}
}
public void Open()
{
if ( SqlConn != null )
{
// 建立数据库连接对象
SqlConn = new SqlConnection( sConn );
// 打开数据库链接
SqlConn.Open();
}
}
public void Close()
{
// 如果数据库连接对象部位空关闭数据库
if ( SqlConn != null )
{
SqlConn.Close();
}
}
public DataView RunSelectSQL ( string sSQLString )
{
this.Open();
DataSet SqlDS = new DataSet();
SqlDataAdapter SqlDA = new SqlDataAdapter( sSQLString, SqlConn );
SqlDA.Fill( SqlDS ); //这里出现了一个错误,错误的提示是:“未处理的“System.InvalidOperationException”类型的异常出现在 system.data.dll 中。其他信息: Fill: SelectCommand.Connection 属性尚未初始化。”
return SqlDS.Tables[ 0 ].DefaultView;
}
public void RunDelOrInsSQL ( string sSQLString )
{
this.Open();
SqlCommand SqlComm = new SqlCommand( sSQLString, SqlConn );
SqlComm.ExecuteNonQuery();
}
public DataBase()
{
}
}
}
------解决方案--------------------public void Open()
{
if ( SqlConn != null )
{
// 建立数据库连接对象
SqlConn = new SqlConnection( sConn );
// 打开数据库链接
SqlConn.Open();
}
else if(SqlConn.State!=ConnectionState.Open)
{
SqlConn.Open();
}
}
public void Close()
{
// 如果数据库连接对象部位空关闭数据库
if ( SqlConn != null )
{
if(SqlConn.Sate!=ConnectionState.Close)
{
SqlConn.Close();
}
}
}
另外,在执行完数据操作之后,应及时关闭数据库连接