5

I feel silly for even having to ask this, but I must be missing something.

I am simply trying to open a new SqlConnection to my LocalDB instance on my development machine. Visual Studio 2013.

I can and am connected to LocalDB from SSMS and am not having any issues. In the solution I am working on, I can and have succesfully connected to LocalDB with Entity Framework.

In another project within the same solution I am attempting to connect to LocalDB with an old school SqlConnection object, and this is where I am just totally failing.

Here is the connection string I am trying to use,

SqlConnection SqlConn = new SqlConnection("Server=(LocalDb)\v11.0;Initial Catalog=DBNAME;Integrated Security=SSPI;Trusted_Connection=yes;");

When I call SqlConn.Open() I get an error message saying it can't find or connect to the database.

This doesn't really matter as the connection string will be changed when this gets merged to production, but I can't for the life of me figure out why I am unable to get this SqlConnection object to talk with LocalDB

mituw16
  • 5,126
  • 3
  • 23
  • 48
  • 1
    Are you certain you have an _instance_ named `v11.0`? – D Stanley Dec 08 '14 at 20:28
  • Maybe? I almost never use LocalDB...Here is the connection string that I have set for Entity Framework to talk to LocalDB `` – mituw16 Dec 08 '14 at 20:30
  • Is the project a web project or something that would be running as a different user? – D Stanley Dec 08 '14 at 20:32
  • Well now I really do feel like an idiot....I forgot to escape the backslash in the connection string in the C# Code....It's fixed now. Thank you @DStanley – mituw16 Dec 08 '14 at 20:32

3 Answers3

9

It looks like you might need to escape the slash in your connection string.

Turn this: "Server=(LocalDb)\v11.0;Initial Catalog=DBNAME;Integrated Security=SSPI;Trusted_Connection=yes;"

Into this: "Server=(LocalDb)\\v11.0;Initial Catalog=DBNAME;Integrated Security=SSPI;Trusted_Connection=yes;"

Zind
  • 751
  • 1
  • 7
  • 17
0

I found this nuget package that wraps up working with SQLLocalDB.

ISqlLocalDbProvider provider = new SqlLocalDbProvider();
ISqlLocalDbInstance instance = provider.GetOrCreateInstance("MyInstance");

instance.Start();

using (SqlConnection connection = instance.CreateConnection())
{
    connection.Open();

    // Use the connection...
}

instance.Stop();
Lord Darth Vader
  • 1,895
  • 1
  • 17
  • 26
0

In my case I was using app.config in a separate PCL which obviously wasn't being read when ConfigurationManager.ConnectionStrings is looking for ConnectionStrings entries in app.config file.

What solved this was editing (in my case creating as there wasn't any file) the main project's app.config file and it worked great.

askepott
  • 250
  • 3
  • 13