An error occurred while getting provider information from the database

connection-string ef-migrations entity-framework

Question

Getting the error:

System.Data.ProviderIncompatibleException: An error occurred while getting provider information from the database. This can be caused by Entity Framework using an incorrect connection string.
Check the inner exceptions for details and ensure that the connection string is correct.
---> System.Data.ProviderIncompatibleException: The provider did not return a ProviderManifestToken string.
---> System.Data.SqlClient.SqlException: A network-related or instance-specific error occurred while establishing a connection to SQL Server. The server was not found or was not accessible. Verify that the instance name is correct and that SQL Server is configured to allow remote connections. (provider: SQL Network Interfaces, error: 25 - Connection string is not valid)

I get the same error when trying to do an Add-Migration

Here is my connection string, I need to access my local SQL server and NOT SQLEXPRESS.

  <connectionStrings>
    <add name="ReaderInsightDbContext" 
         connectionString="data source=localhost\MSSQLSERVER;
                         initial catalog=ReaderInsight;Integrated Security=True" 
         providerName="System.Data.SqlClient" />
  </connectionStrings>

My DB is located:

C:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\DATA

So my instance is MSSQLSERVER. Not sure what is going on. It first worked just fine, but after I changed my code to use the UOW pattern, this is happening. I also upgraded from EF 4.3 to EF5. Same issue.

I tried many variations of the data source in the connection string, none work, here are some examples:

  • localhost\MSSQLSERVER
  • .\MSSQLSERVER
  • //localhost\MSSQLSERVER
  • (local)\MSSQLSERVER
  • 127.0.0.1\MSSQLSERVER

If I do .\SQLEXPRESS it works.

1
9
10/23/2013 9:46:59 AM

Popular Answer

Managed to get it resolved.

Bottom line manually deleting the migration files causes issues.

Made sure my connection string looks like so:

  <connectionStrings>
    <add name="ReaderInsightDbContext" 
     connectionString=
     "Data Source=(local);Initial Catalog=ReaderInsight;Integrated Security=True"
     providerName="System.Data.SqlClient" />
  </connectionStrings>

Performed an Update-Database -TargetMigration:$InitialDatabase which did not work as it said there is still pending changes.

So I performed

System.Data.Entity.Database.SetInitializer(     
  new System.Data
            .Entity
            .DropCreateDatabaseIfModelChanges<ReaderInsightDbContext>()); 

in the global.asax file.

Commented it out, so it wont run again. I then did a Add-Migration Init and it recreated the script for the entire DB and when I ran Update-Database worked like a charm.

8
10/23/2013 9:49:45 AM


Related Questions





Related

Licensed under: CC-BY-SA with attribution
Not affiliated with Stack Overflow
Licensed under: CC-BY-SA with attribution
Not affiliated with Stack Overflow