夕羊。 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();
    }
    其他类似
    
    评论

报告相同问题?

悬赏问题

  • ¥15 HFSS 中的 H 场图与 MATLAB 中绘制的 B1 场 部分对应不上
  • ¥15 如何在scanpy上做差异基因和通路富集?
  • ¥20 关于#硬件工程#的问题,请各位专家解答!
  • ¥15 关于#matlab#的问题:期望的系统闭环传递函数为G(s)=wn^2/s^2+2¢wn+wn^2阻尼系数¢=0.707,使系统具有较小的超调量
  • ¥15 FLUENT如何实现在堆积颗粒的上表面加载高斯热源
  • ¥30 截图中的mathematics程序转换成matlab
  • ¥15 动力学代码报错,维度不匹配
  • ¥15 Power query添加列问题
  • ¥50 Kubernetes&Fission&Eleasticsearch
  • ¥15 報錯:Person is not mapped,如何解決?