Nicefsf
Nicefsf

Reputation: 140

EF creates database with adding guid to it's name

I want to create a new database using EF6. This is my connection string. I'm using code-first.

<connectionStrings>
    <add name="local" 
         providerName="System.Data.SqlClient" 
         connectionString="Data Source=(localdb)\MSSQLLocalDB;AttachDbFileName=|DataDirectory|\SampleDbName.mdf;Integrated Security=True;MultipleActiveResultSets=True" />
</connectionStrings>

After running my asp.net app EF completely creates database, but it's name changes to SAMPLEDBNAME_349a392a7d84452287b4948d4f2ab5cf (it's probably a guid).

What do I have to do to create database with name specified in connection string?

Upvotes: 3

Views: 176

Answers (1)

BroDev
BroDev

Reputation: 590

Add this to your connection string:

Database=DatabaseName

or InitialCatalog=DatabaseName

like so(if registering with dependency injection):

string connection = @"Server=server_address;Database=databaseName;PersistSecurityInfo=False;User=username;Password=pa$$;MultipleActiveResultSets=False;"; 
services.AddDbContext<DbContextName>(options => options.UseSqlServer(connection));

Or in your case

connectionString="Data Source=(localdb)\MSSQLLocalDB;AttachDbFileName=|DataDirectory|\SampleDbName.mdf;Integrated Security=True;Database=DatabaseName;MultipleActiveResultSets=True" />

or if Database=DatabaseName won't work try InitialCatalog=DatabaseName

Upvotes: 4

Related Questions