0

I'm trying to pass data source=(local);initial catalog=xxx;integrated security=false;user id=sa;password=yyy; to my EFDbContext. What I've done is

public class EFDbContext : DbContext
{
    public EFDbContext() : base(@"data source=(local);initial catalog=xxx;integrated security=false;userid=sa;password=yyy;MultipleActiveResultSets=True;App=EntityFramework")
    {
    }
}

But it raises an error saying

“Keyword not supported:‘initial catalog’”

when I run the program. Is it a problem to the format of my connection string?

user9405863
  • 1,506
  • 1
  • 11
  • 16
  • Connection string - Keyword not supported: 'initial catalog' https://stackoverflow.com/questions/8150737/connection-string-keyword-not-supported-initial-catalog – Houssem Romdhani Mar 15 '18 at 08:52
  • it should be `Initial Catalog=xxx;` , note that is should be with capitalized letters, i also recommend to use [SqlConnectionStringBuilder](https://msdn.microsoft.com/en-us/library/system.data.sqlclient.sqlconnectionstringbuilder(v=vs.110).aspx) – styx Mar 15 '18 at 08:53
  • @styx it's not about the case of letters, I've tried Initial Catalog too. – user2951219 Mar 15 '18 at 08:57
  • @HoussemRomdhani the constructor of DbContext can't take provider name as an additional parameter. – user2951219 Mar 15 '18 at 09:06

1 Answers1

0
public class EFDbContext : DbContext
{
    public EFDbContext() : base(@"data source=(local);initial catalog=xxx;integrated security=false;userid=sa;password=yyy;MultipleActiveResultSets=True;App=EntityFramework")
    {
        this.Database.Connection.Provider = "System.Data.SqlClient";
    }
}
Houssem Romdhani
  • 332
  • 1
  • 11