.net – 建立与SQL Server的连接时发生错误

前端之家收集整理的这篇文章主要介绍了.net – 建立与SQL Server的连接时发生错误前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
如果我有这样的web.config中的我的连接字符串(添加的行提要更好的可读性):
<add 
name="conn" 
connectionString="Data Source=(localdb)\v11.0; Initial 
    Catalog=MyDB; Integrated Security=True; MultipleActiveResultSets=True; 
    AttachDbFilename=D:\Products.mdf" 
providerName="System.Data.sqlClient"/>

连接工作,我可以连接到数据库资源管理器中的数据库.

当我在代码中指定connectionstring或使用ConfigurationManager获取它不起作用:

sqlCommand command = new sqlCommand();
    command.CommandText = "select ...";
    command.CommandType = CommandType.Text;
    sqlConnection cn = new sqlConnection("Data Source=(localdb)\\v11.0;"+
        "Initial Catalog=MyDB; Integrated Security=True; "+
        "MultipleActiveResultSets=True; AttachDbFilename=D:\\Products.mdf");
    command.Connection = cn;
    cn.Open();
    DataTable dataTable = new DataTable();
    sqlDataReader reader;
    reader = command.ExecuteReader();
    dataTable.Load(reader);
    cn.Close();

从web.config获取连接字符串给出相同的错误

sqlConnection cn = new sqlConnection(ConfigurationManager.ConnectionStrings
 ["conn"].ConnectionString;

我得到的错误是“System.ComponentModel.Win32Exception:找不到网络路径”

在痕迹中说:

A network-related or instance-specific error occurred while
establishing a connection to sql Server. The server was not found or
was not accessible. Verify that the instance name is correct and that
sql Server is configured to allow remote connections. (provider: Named
Pipes Provider,error: 40 – Could not open a connection to sql
Server)]

我需要一些帮助解决这个问题,一直在努力解决这个问题,几个小时,任何在线建议是我应该检查网络设置(不适用,因为它连接到本地实例的sql server express).服务器名称(相同的字符串在VS Express中工作,但不在运行代码中).

可能是认证问题吗?如果是这样,为什么不提供信息错误

感谢您阅读我的帖子,希望您能帮助我.

更新:

我尝试了以下几点:

给予该组所有对mdf和ldf文件的完全许可

在Web下的项目属性中,我尝试在VS开发服务器和本地IIS Web服务器(IIS Express)下运行项目,

没有运气,当将代码复制到使用“ASP.NET空Web应用程序”创建的项目时,仍然无法连接到连接完美的位置

解决方法

您正确地转义了数据库文件名,而不是数据源,因此它尝试连接到名为“(localdb)11.0”的数据源,这很可能不存在.

尝试像这样正常地转义它:

sqlConnection cn = new sqlConnection("Data Source=(localdb)\\v11.0;"+
"Initial Catalog=MyDB; Integrated Security=True; "+
"MultipleActiveResultSets=True; AttachDbFilename=D:\\Products.mdf");

猜你在找的MsSQL相关文章