Entity Framework探查器:无法确定 'system.data.sqlclient.sqlclientfactory' 类型的提供程序工厂的提供程序名称

Entity Framework Profiler: unable to determine the provider name for provider factory of type 'system.data.sqlclient.sqlclientfactory'

当我使用 Entity Framework Profiler 3.0 在后台记录真实的 SQL 语句时,有时会出现以下异常:

消息:无法确定 'system.data.sqlclient.sqlclientfactory' 类型的提供程序工厂的提供程序名称。
资料来源:EntityFrameWork。

我在 运行 项目处于 visual studio 2015 调试模式时出现此错误,它显示文件浏览器以定位 r5wldbbb.5.cs。我不知道这个文件是什么,而且 Entity Framework Profiler 文件夹中也不存在。因此,当我取消它时,我会给出上述异常并引发此错误:

r5wldbbb。5.cs 未找到。
您需要找到 r5wldbbb.5.cs 才能查看当前调用堆栈帧的源代码。

然而,当我取消Entity Framework Profiler时,我没有给出这个错误。

我使用这些程序:
Visual Studio 2015.
MSSQL 服务器 2014.
EntityFramework6.

感谢任何帮助。

我终于修好了。

诀窍是更新获取和打开数据库连接的方式:

var connectionString = ConfigurationManager.ConnectionStrings["yourContextName"].ConnectionString;    

var connectionFactoryService = (IDbConnectionFactory)DbConfiguration.DependencyResolver.GetService(typeof(IDbConnectionFactory);

var DbConn = connectionFactoryService.CreateConnection(connectionString);

让我知道它是否也适合你:)另外,不要忘记使用 NuGet 将 EF 探查器更新到最新版本。