4

mvc-mini-profiler でエンティティ フレームワークを使用しています。mvc-mini-profiler 1.7 からバージョン 1.9 にアップグレードし、いくつかの問題を解決した後、プロジェクトをコンパイルすることができました。現在、次の実行時例外が発生しています。

タイプ 'MvcMiniProfiler.Data.EFProfiledDbConnection' の接続のプロバイダー名を特定できません

バージョン 1.7 で同じ問題が発生し、.config ファイルに以下を追加して解決したため、問題は構成済みの db プロバイダー ファクトリに関連している可能性があると思います。

<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 に答える