Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

ASP.NET connection string to local SQL Server database, using web.config

Why is System.Data.SqlClient.SqlConnection class throwing an exception that "The parameter is incorrect"?

I'm attempting to learn how to set up database connections using a local SQL database and an ASP.NET MVC project, using .NET framework 4.5.

Here are the steps I've taken that lead up to this:

  1. Created a new SQL Server database in my project App_Data folder, called TestSQLdb.mdf.

  2. Created a connection string in web.config:

    <add name="SQLTestConnection1" 
         connectionString="Data Source=(LocalDB);initial catalog=TestSQLdb;Integrated Security=true" />  
    
  3. Access the connection string through

    string cn_str = ConfigurationManager.ConnectionStrings["SQLTestConnection1"].ConnectionString;
    

    (See this SO thread for more info on this).

  4. Created a new connection:

    SqlConnection conn = new SqlConnection(cn_str);
    
  5. Attempt to open the connection:

    try
    {
         conn.Open();
    

    At this point, an exception is thrown.

I tried to set this up so it would be simple and easy to learn on. What am I missing?

like image 409
Aaron Thomas Avatar asked Feb 23 '15 20:02

Aaron Thomas


1 Answers

When you are working with a localDB you'll have to specify a AttachDbFileName attribute in your connectionString. This attribute should point to your TestSQLdb.mdf file. Initial catalog is the name of your dataBase within your mdf file.

see MSDN for this example

<add name="ConnectionStringName"
providerName="System.Data.SqlClient"
connectionString="Data Source=(LocalDB)\v11.0;AttachDbFileName=|DataDirectory|\DatabaseFileName.mdf;InitialCatalog=DatabaseName;Integrated Security=True;MultipleActiveResultSets=True" />
like image 200
Pilgerstorfer Franz Avatar answered Nov 12 '22 00:11

Pilgerstorfer Franz