1

MiniProfiler 1.9をEntityFrameworkおよびEFProviderWrapperToolkitで使用することは可能ですか?また、コードファーストではなく、データベースメソッドからの更新edmxを使用しています。

私はEFProviderWrapperToolkitをすでにインストールしていて、非常にうまく機能しています。キャッシングプロバイダーが大きな違いを生みます。しかし、MiniProfilerと衝突しているようです。

protected void Application_BeginRequest()
{
    if (Request.IsLocal)
    {
        //MiniProfiler.Start();
        MiniProfilerEF.Initialize();
    }
}

これは、MiniProfilerとEFProviderWrapperToolkitの両方がdb接続をラップしようとしていることが原因である可能性があります。

次のエラーメッセージが表示されます。

タイプ'MvcMiniProfiler.Data.EFProfiledDbConnection'のオブジェクトをタイプ'EFProviderWrapperToolkit.DbConnectionWrapper'にキャストできません。

229行目:DbProviderFactory factory = DbProviderFactories.GetFactory(invariantName); 230行目:var connectionWrapper = factory.CreateConnection(); 231行目:DbConnectionWrapperラッパー=(DbConnectionWrapper)connectionWrapper; 232行目:wrapper.WrappedConnection = connection; 233行目:connection = connectionWrapper;

[InvalidCastException:タイプ'MvcMiniProfiler.Data.EFProfiledDbConnection'のオブジェクトをタイプ'EFProviderWrapperToolkit.DbConnectionWrapper'にキャストできません。]EFProviderWrapperToolkit.DbConnectionWrapper.WrapConnection(DbConnection connection、String []wrapperProviderInvariantNames)をC:\ src \ MyApp.2010 \ \ EFProviderWrapperToolkit \ DbConnectionWrapper.cs:231 C:\ src \ MyApp.2010 \ EF4ProviderWrappers \ EFProviderWrapperToolkit \ EntityConnectionWrap C:\ src \ MyApp.2010 \ MyAppのEF.ExtendedMyAppContext..ctor(String connectionString、EntityConnectionStringBuilder ecsb)。Infrastructure.Repository.EF \ ExtendedMyAppContext.cs:19 MyApp.Infrastructure.Repository.EF.ObjectContextManager.GetObjectContext()in C:\ src \ MyApp.2010 \ MyApp.Infrastructure.Repository.EF \ Repository.EF \ ObjectContextManager.cs: 62 MyApp.Infrastructure.Repository.EF.GenericRepository1.get_ObjectContext() in C:\src\MyApp.2010\MyApp.Infrastructure.Repository.EF\Repository.EF\GenericRepository.cs:81 MyApp.Infrastructure.Repository.EF.GenericRepository1.get_ObjectSet()in C:\ src \ MyApp.2010 \ MyApp.Infrastructure.Repository.EF \ Repository.EF \ GenericRepository.cs:89 MyApp.Infrastructure.Repository.EF.GenericRepository`1.GetQuery()in C: \ src \ MyApp.2010 \ MyApp.Infrastructure.Repository.EF \ Repository.EF \ GenericRepository.cs:102

4

1 に答える 1

1

どちらも変更しない限り、答えは「いいえ」です。どちらもデータベース プロバイダーを置き換えますが、これらの置き換えには互換性がないためです。

于 2011-10-21T09:24:54.503 に答える