Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/wix/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Entity framework 从数据库获取提供程序信息时出错_Entity Framework_Connection String_Entity Framework Migrations - Fatal编程技术网

Entity framework 从数据库获取提供程序信息时出错

Entity framework 从数据库获取提供程序信息时出错,entity-framework,connection-string,entity-framework-migrations,Entity Framework,Connection String,Entity Framework Migrations,获取错误: System.Data.ProviderIncompatibleException:从数据库获取提供程序信息时出错。这可能是由于实体框架使用了不正确的连接字符串造成的。 检查内部异常以了解详细信息,并确保连接字符串正确。 --->System.Data.ProviderIncompatibleException:提供程序未返回ProviderManifestToken字符串。 --->System.Data.SqlClient.SqlException:建立到SQL Server的连

获取错误:

System.Data.ProviderIncompatibleException:从数据库获取提供程序信息时出错。这可能是由于实体框架使用了不正确的连接字符串造成的。
检查内部异常以了解详细信息,并确保连接字符串正确。
--->System.Data.ProviderIncompatibleException:提供程序未返回ProviderManifestToken字符串。
--->System.Data.SqlClient.SqlException:建立到SQL Server的连接时发生与网络相关或特定于实例的错误。找不到服务器或无法访问服务器。验证实例名称是否正确,以及SQL Server是否配置为允许远程连接。(提供程序:SQL网络接口,错误:25-连接字符串无效)

尝试执行
添加迁移时,我会遇到相同的错误

这是我的连接字符串,我需要访问本地SQL server,而不是SQLEXPRESS

  <connectionStrings>
    <add name="ReaderInsightDbContext" 
         connectionString="data source=localhost\MSSQLSERVER;
                         initial catalog=ReaderInsight;Integrated Security=True" 
         providerName="System.Data.SqlClient" />
  </connectionStrings>
所以我的实例是MSSQLSERVER。不知道发生了什么事。它最初运行得很好,但在我更改代码以使用UOW模式之后,这种情况就发生了。我还从EF4.3升级到EF5。同样的问题

我在连接字符串中尝试了数据源的多种变体,但均无效,以下是一些示例:

  • localhost\MSSQLSERVER
  • MSSQLSERVER
  • //localhost\MSSQLSERVER
  • (本地)\MSSQLSERVER
  • 127.0.0.1\MSSQLSERVER
如果我这样做。\SQLEXPRESS它可以工作。

请参阅以下文章:


看起来你错过了火星设定

设法解决了这个问题

底线手动删除迁移文件会导致问题

确保我的连接字符串如下所示:

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


注释掉它,所以它不会再次运行。然后,我进行了添加迁移初始化,它为整个数据库重新创建了脚本。当我运行更新数据库时,它工作得非常出色。

我在更改密码时遇到了这个问题,SQL Server无法启动。检查:)

检查您在连接字符串中使用的SQL Server是否已启动。

前几天我遇到了相同的问题。原因是我的MSSQL服务器版本。 我试着使用VS2010和SQLServer2008,但没有成功。
它与VS2010附带的SQL Express配合使用效果很好(但尚未启动),但与SQL SERVER配合使用效果不佳。

我将其与VS2010配合使用,效果良好:

  • 添加的用户实例=true
  • 已使用数据源。\SQLEXPRESS


  • 通过将解决方案中的启动项目设置为实体dll项目(具有app.config文件),我解决了这个问题。我确实将PackageManager控制台窗口中的“默认项目”设置为正确的实体dll项目,但这不起作用。详情


    system data entity core providerin

    尝试过,它指向的是SQLEXPRESS,而不是SQLServer可能有助于解决这个问题,我删除了添加迁移生成的所有迁移文件,因为我的数据库仅存在于本地计算机上,并且外键有问题,所以我决定为现在稳定的DB生成一个干净的迁移。但不确定为什么会有影响。请参阅此[post.][1][1]:看起来您缺少火星设置。而不是数据源=。;设置数据源=localhost;在你的连接中!我也有同样的问题。我已将启动项目更改为其他项目,迁移停止工作。谢谢你的回答;这让我快发疯了。谢谢你。成功了。奇怪的解决方案,但它对我有效
      <connectionStrings>
        <add name="ReaderInsightDbContext" 
         connectionString=
         "Data Source=(local);Initial Catalog=ReaderInsight;Integrated Security=True"
         providerName="System.Data.SqlClient" />
      </connectionStrings>
    
    System.Data.Entity.Database.SetInitializer(     
      new System.Data
                .Entity
                .DropCreateDatabaseIfModelChanges<ReaderInsightDbContext>());