配置Entity Framework连接Sql Server出现的一个异常

时间:2022-01-30 13:28:43

    异常:The Entity Framework provider type 'System.Data.Entity.SqlServer.SqlProviderServices, EntityFramework.SqlServer' registered in the application config file for the ADO.NET provider with invariant name 'System.Data.SqlClient' could not be loaded. Make sure that the assembly-qualified name is used and that the assembly is available to the running application. See http://go.microsoft.com/fwlink/?LinkId=260882 for more information.

    方法1

      网上找到这样一个方法,在代码中添加:

      public void FixEfProviderServicesProblem()
      {
        //The Entity Framework provider type 'System.Data.Entity.SqlServer.SqlProviderServices, EntityFramework.SqlServer'
        //for the 'System.Data.SqlClient' ADO.NET provider could not be loaded.
        //Make sure the provider assembly is available to the running application.
        //See http://go.microsoft.com/fwlink/?LinkId=260882 for more information.

        var instance = System.Data.Entity.SqlServer.SqlProviderServices.Instance;
      }

      本段代码并未使用;至于为什么会消除异常,还待深入了解。但这不是一个好的解决方法,它可能会引起另外一些问题。

     方法2

      在配置有Entity Framework的子项目中,有几个DLL如下:

      配置Entity Framework连接Sql Server出现的一个异常

      出现异常的原因主要是缺少了EntityFramework.DynamicFilters.dll、EntityFramework.SqlServer.dll、EntityFramework.SqlServer.xml。将这三个文件拷贝到主项目中,即可。