2011-10-20 42 views
1

是否可以将MiniProfiler 1.9与EntityFramework以及EFProviderWrapperToolkit结合使用?我也使用数据库方法更新edmx,而不是第一个代码。MiniProfiler plus EntityFramework plus EFProviderWrapperToolkit?

我已经安装了EFProviderWrapperToolkit并且工作得很好,它的缓存提供程序有很大的不同。但似乎与MiniProfiler发生冲突:

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

这可能是因为这两个MiniProfiler和EFProviderWrapperToolkit试图包裹 数据库连接。

给出了这样的错误消息:

无法转换类型的对象 'MvcMiniProfiler.Data.EFProfiledDbConnection' 为类型 'EFProviderWrapperToolkit.DbConnectionWrapper'。

229行:DbProviderFactory factory = DbProviderFactories.GetFactory(invariantName); 第230行:var connectionWrapper = factory.CreateConnection(); Line 231:DbConnectionWrapper wrapper =(DbConnectionWrapper)connectionWrapper; 第232行:wrapper.WrappedConnection = connection; 第233行:connection = connectionWrapper;

[InvalidCastException的:无法转换类型 'MvcMiniProfiler.Data.EFProfiledDbConnection' 的目的为类型 'EFProviderWrapperToolkit.DbConnectionWrapper'] EFProviderWrapperToolkit.DbConnectionWrapper.WrapConnection(的DbConnection连接,字符串[] wrapperProviderInvariantNames)在C:\ SRC \ MyApp.2010 \ EF4ProviderWrappers \ EFProviderWrapperToolkit \ DbConnectionWrapper.cs:231个 EFProviderWrapperToolkit.EntityConnectionWrapperUtils.CreateEntityConnectionWithWrappers(字符串entityConnectionString,EntityConnectionStringBuilder ECSB,字符串[] wrapperProviders)在C:\ SRC \ MyApp.2010 \ EF4ProviderWrappers \ EFProviderWrapperToolkit \ EntityConnectionWrapperUtils.cs:60 MyApp.Infrastructure.Repository.EF.ExtendedMyAppContext..ctor(String connectionString,EntityConnectionStringBuilder e c:\ src \ MyApp.2010 \ MyApp.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.GenericRepository 1.get_ObjectContext() in C:\src\MyApp.2010\MyApp.Infrastructure.Repository.EF\Repository.EF\GenericRepository.cs:81 MyApp.Infrastructure.Repository.EF.GenericRepository 1.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

回答

1

不修改其中任何一个答案都是否定的,因为它们都替换数据库提供者,展示位置不兼容。