是否可以将MiniProfiler 1.9与EntityFramework一起使用,还可以与EFProviderWrapperToolkit一起使用?我也在使用数据库方法的更新edmx,而不是代码。
我已经安装了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(); 第231行:DbConnectionWrapper wrapper =(DbConnectionWrapper)connectionWrapper; 第232行:wrapper.WrappedConnection = connection; 第233行:connection = connectionWrapper;
[InvalidCastException:无法将'MvcMiniProfiler.Data.EFProfiledDbConnection'类型的对象强制转换为'EFProviderWrapperToolkit.DbConnectionWrapper'。 EFProviderWrapperToolkit.DbConnectionWrapper.WrapConnection(DbConnection连接,String [] wrapperProviderInvariantNames)在C:\ src \ MyApp.2010 \ EF4ProviderWrappers \ EFProviderWrapperToolkit \ DbConnectionWrapper.cs:231 EFProviderWrapperToolkit.EntityConnectionWrapperUtils.CreateEntityConnectionWithWrappers(String entityConnectionString,EntityConnectionStringBuilder ecsb,String [] wrapperProviders)在C:\ src \ MyApp.2010 \ EF4ProviderWrappers \ EFProviderWrapperToolkit \ EntityConnectionWrapperUtils.cs:60 C:\ src \ MyApp.2010 \ MyApp.Infrastructure.Repository.EF \ ExtendedMyAppContext.cs中的MyApp.Infrastructure.Repository.EF.ExtendedMyAppContext..ctor(String connectionString,EntityConnectionStringBuilder ecsb):19 C:\ src \ MyApp.2010 \ MyApp.Infrastructure.Repository.EF \ Repository.EF \ ObjectContextManager.cs中的MyApp.Infrastructure.Repository.EF.ObjectContextManager.GetObjectContext():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()在C:\ src \ MyApp.2010 \ MyApp.Infrastructure.Repository.EF \ Repository.EF \ GenericRepository.cs:89 MyApp.Infrastructure.Repository.EF.GenericRepository`1.GetQuery()在C:\ src \ MyApp.2010 \ MyApp.Infrastructure.Repository.EF \ Repository.EF \ GenericRepository.cs:102
答案 0 :(得分:1)
如果不修改其中任何一个,答案就是否定,因为它们都替换了数据库提供程序,但这些替换不兼容。