夕羊。 2019-07-01 19:29 采纳率: 0%
浏览 1175

新手提问:异常详细信息: System.NullReferenceException: 未将对象引用设置到对象的实例。

图片说明

using System;
using System.Data;
using System.Configuration;
using System.Data.SqlClient;

///
/// DbAccess 的摘要说明
///
public class DbAccess
{
private static SqlConnection conn;
private SqlDataAdapter da;
private DataSet ds;
private SqlCommand cmd;
public DbAccess()
{
//
// TODO: 在此处添加构造函数逻辑
//
}
///
/// 获取数据库连接
///
/// 获取数据库连接
internal static SqlConnection GetConn()
{
try
{
//从webConfig中读取数据库链接字符串
string cstr = ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString;
conn = new SqlConnection(cstr);
if (conn.State != ConnectionState.Open)
{
conn.Open();

        }
        return conn;
    }
    catch (Exception e)
    {      
    }
    return null;
}

///
/// 关闭数据库链接
///
internal static void CloseConn()
{
if (conn.State != ConnectionState.Closed)
{
conn.Close();
}
}

///
/// 执行Sql语句,包括添加,删除,和修改语句
///
/// sql语句
/// 数据库影响的行数
public bool ExecuteSql(string sql)
{
try
{
conn = GetConn();

        if (conn.State != ConnectionState.Open)
        {
            conn.Open();
        } 
        cmd = new SqlCommand(sql, conn);
        int flag = cmd.ExecuteNonQuery();

        return flag > 0;
    }
    catch (Exception e)
    { 
    }
    finally
    {
        conn.Close();

    }
    return false;
}


/// <summary>
/// 根据sql语句返回DataSet类型数据集
/// </summary>
/// <param name="sql">Sql查询语句</param>
/// <returns>DataSet数据集</returns>
public DataSet GetDataSet(string sql)
{
    try
    {
        conn = GetConn();
        da = new SqlDataAdapter(sql, conn);
        DataSet dst = new DataSet();
        da.Fill(dst);

        return dst;
    }
    catch { }
    finally
    {
        conn.Close();
    }
    return null;
}
  • 写回答

2条回答 默认 最新

  • Json-Huang 2019-07-01 20:14
    关注

    conn = GetConn();空指针异常,看下string cstr = ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString;能否获取到值?debug看下conn是否为空,conn调用前建议加个判断,如

    if(null!=conn){
    conn.Close();
    }
    其他类似
    
    评论

报告相同问题?

悬赏问题

  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 对于相关问题的求解与代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 信号傅里叶变换在matlab上遇到的小问题请求帮助
  • ¥15 保护模式-系统加载-段寄存器
  • ¥15 电脑桌面设定一个区域禁止鼠标操作
  • ¥15 求NPF226060磁芯的详细资料