首页 > 解决方案 > “SQLException was unhandled”System.Data.dll 中发生了“System.Data.SqlClient.SqlException”类型的未处理异常

问题描述

运行此项目时出现错误

System.Data.dll 中出现“System.Data.SqlClient.SqlException”类型的未处理异常

附加信息:建立与 SQL Server 的连接时发生与网络相关或特定于实例的错误。服务器未找到或无法访问。验证实例名称是否正确以及 SQL Server 是否配置为允许远程连接。(提供者:命名管道提供者,错误:40 - 无法打开与 SQL Server 的连接)

namespace Project.DAL
{

    public static class NativeSqlDb
    {
        public static string ConStr
        {
            get
            {
                return System.Configuration.ConfigurationManager.ConnectionStrings["Project.Properties.Settings.QuestionDbConnectionString"].ConnectionString;
            }
        }

        public static DataTable ExecuteReader(string sql)
        {
            SqlConnection con = new SqlConnection(ConStr);
            SqlCommand cmd = new SqlCommand(sql, con);
            DataTable dt = new DataTable("Dt");
            con.Open();  //Im having error on this part sqlexception was unhandle

            try
            {
                SqlDataReader reader = cmd.ExecuteReader();
                dt.Load(reader);
                reader.Close();
            }
            finally
            {
                con.Close();
            }
            return dt;
        }

        public static int ExecuteNonQuery(string sql)
        {
            SqlConnection con = new SqlConnection(ConStr);
            SqlCommand cmd = new SqlCommand(sql, con);
            con.Open();
            int sayi = 0;
            try
            {
                sayi = cmd.ExecuteNonQuery();
            }
            finally
            {
                con.Close();
            }
            return sayi;
        }

        public static int ExecuteNonQuery(string sql, params SqlParameter[] param)
        {
            SqlConnection con = new SqlConnection(ConStr);
            SqlCommand cmd = new SqlCommand(sql, con);
            con.Open();
            int sayi = 0;
            foreach (SqlParameter p in param)
            {
                cmd.Parameters.Add(p);
            }
            try
            {
                sayi = cmd.ExecuteNonQuery();
            }
            finally
            {
                con.Close();
            }
            return sayi;
        }

        public static object ExecuteScalar(string sql)
        {
            SqlConnection con = new SqlConnection(ConStr);
            SqlCommand cmd = new SqlCommand(sql, con);
            con.Open();
            object o;
            try
            {
                o = cmd.ExecuteScalar();
            }
            finally
            {
                con.Close();
            }
            return o;
        }

    }
}

我已连接到我的 SQL 服务器,但我仍然收到错误消息。

编辑:断点截图。

连接字符串

编辑:

管理工作室登录

管理工作室登录

标签: c#

解决方案


你去吧。配置文件中的连接字符串不应data source=.\sqlexpress包含USER-PC

<add name="Project.Properties.Settings.QuestionDbConnectionString" connectionString="Data Source=.\SQLEXPRESS;Initial Catalog=Project;Integrated Security=true;" providerName="System.Data.SqlClient" />

管理工作室连接

在此处输入图像描述


推荐阅读