为什么System.Data.SqlClient.SqlConnection
类抛出“参数不正确”的异常?
我正在尝试使用.NET Framework 4.5学习如何使用本地SQL数据库和ASP.NET MVC项目设置数据库连接。
以下是我采取的步骤:
在项目App_Data
文件夹中创建了一个名为TestSQLdb.mdf
的新SQL Server数据库。
在web.config
中创建了一个连接字符串:
<add name="SQLTestConnection1"
connectionString="Data Source=(LocalDB);initial catalog=TestSQLdb;Integrated Security=true" />
通过
访问连接字符串string cn_str = ConfigurationManager.ConnectionStrings["SQLTestConnection1"].ConnectionString;
(有关详细信息,请参阅this SO主题)。
创建了一个新连接:
SqlConnection conn = new SqlConnection(cn_str);
尝试打开连接:
try
{
conn.Open();
此时,抛出异常。
我尝试设置它,这样简单易学。我错过了什么?
答案 0 :(得分:5)
当您使用localDB时,您必须在connectionString中指定 AttachDbFileName 属性。此属性应指向 TestSQLdb.mdf 文件。初始目录是mdf文件中数据库的名称。
有关此示例的信息,请参阅MSDN
<add name="ConnectionStringName"
providerName="System.Data.SqlClient"
connectionString="Data Source=(LocalDB)\v11.0;AttachDbFileName=|DataDirectory|\DatabaseFileName.mdf;InitialCatalog=DatabaseName;Integrated Security=True;MultipleActiveResultSets=True" />
答案 1 :(得分:0)
您没有将变量传递给new SqlConnection
,而是尝试调用名为cn_str
的函数。
要使其正常工作,您需要从名称中删除括号。
SqlConnection conn = new SqlConnection(cn_str);