4

我正在使用带有 mvc-mini-profiler 的实体框架。从 mvc-mini-profiler 1.7 升级到 1.9 版并解决一些问题后,我设法编译了我的项目。现在我收到以下运行时异常:

无法确定“MvcMiniProfiler.Data.EFProfiledDbConnection”类型连接的提供程序名称

我认为问题可能与配置的数据库提供程序工厂有关,因为我在 1.7 版中遇到了同样的问题,并通过将以下内容添加到我的 .config 文件来解决它:

<DbProviderFactories>
    <remove invariant="MvcMiniProfiler.Data.ProfiledDbProvider" />
    <add name="MvcMiniProfiler.Data.ProfiledDbProvider" 
         invariant="MvcMiniProfiler.Data.ProfiledDbProvider" 
         description="MvcMiniProfiler.Data.ProfiledDbProvider" 
         type="MvcMiniProfiler.Data.ProfiledDbProviderFactory, MvcMiniProfiler, Version=1.7.0.0, Culture=neutral, PublicKeyToken=b44f9351044011a3" />
</DbProviderFactories>

现在我尝试用以下内容替换上面的内容,但仍然出现错误:

<DbProviderFactories>
    <remove invariant="MvcMiniProfiler.Data.ProfiledDbProvider" />
    <add name="MvcMiniProfiler.Data.ProfiledDbProvider" 
         invariant="MvcMiniProfiler.Data.ProfiledDbProvider" 
         description="MvcMiniProfiler.Data.ProfiledDbProvider" 
         type="MvcMiniProfiler.Data.EFProfiledDbProviderFactory`1, MvcMiniProfiler.EntityFramework, Version=1.9.1.0, Culture=neutral, PublicKeyToken=b44f9351044011a3" />
</DbProviderFactories>

解决此问题的正确配置是什么?

4

1 回答 1

4

您是否尝试过从 .config 中删除 DbProviderFactories?

里面有初始化吗?

protected void Application_Start()
{
    ....other code

    MiniProfilerEF.Initialize();
}

在 1.9 中,我只是在 Start 中添加了 Initialize 并删除了 config 部分,现在我使用 EF 进行了 SQL 分析。

于 2011-09-02T16:35:00.233 回答