在我的WPF应用程序中,我想连接到数据库。
如果我使用以下代码,它可以正常工作:
string connectionString = @"Data Source=SERVER\ENGINE;Initial Catalog=MyDb;User ID=sa;Password=123456;";
SqlConnection connection = new SqlConnection(connectionString);
connection.Open();
现在我将ConnectionString
移到我的App.config
,并希望从那里使用以下代码:
string connectionString = ConfigurationManager.ConnectionStrings[0].ConnectionString;
SqlConnection connection = new SqlConnection(connectionString);
connection.Open();
现在我得到SqlExecption
:
类型'System.Data.SqlClient.SqlException'的未处理异常 发生在System.Data.dll
中发生与网络相关或特定于实例的错误 建立与SQL Server的连接。找不到服务器或 无法访问。验证实例名称是否正确 SQL Server配置为允许远程连接。 (提供者:SQL 网络接口,错误:26 - 查找服务器/实例时出错 指定)
App.config
看起来像:
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5" />
</startup>
<connectionStrings >
<add connectionString="Data Source=SERVER\ENGINE;Initial Catalog=MyDb;User ID=sa;Password=123456;" name="connection"/>
</connectionStrings>
</configuration>
为什么这不起作用?
答案 0 :(得分:2)
试试这个: - (首选名字而不是索引)
ConfigurationManager.ConnectionStrings["connection"].ConnectionString;
您可以阅读为什么我们应该Here。
答案 1 :(得分:1)
您始终可以通过名称参数获取连接字符串:
ConfigurationManager.ConnectionStrings["connection"].ConnectionString;