我正在尝试将迷你探查器与旧式EF代码一起使用 - 数据库优先。
到目前为止:
我使用以下方法创建了一个db上下文:
string connectionString = GetConnectionString();
var connection = new EntityConnection(connectionString);
var profiledConnection = ProfiledDbConnection.Get(connection);
_context = profiledConnection.CreateObjectContext<MyEntitiesType>();
然后我点击“无法找到所请求的.Net Framework数据提供程序。可能无法安装。”
我使用<system.data>
对MvcMiniProfiler提供程序的引用来解决这个问题:
<system.data>
<DbProviderFactories>
<remove invariant="MvcMiniProfiler.Data.ProfiledDbProvider" />
<add name="MvcMiniProfiler.Data.ProfiledDbProvider" invariant="MvcMiniProfiler.Data.ProfiledDbProvider" description="MvcMiniProfiler.Data.ProfiledDbProvider" type="MvcMiniProfiler.Data.ProfiledDbProviderFactory, MvcMiniProfiler" />
</DbProviderFactories>
</system.data>
但是现在我在C:\Users\sam\Desktop\mvc-mini-profiler\MvcMiniProfiler\Data\ProfiledDbProviderServices.cs
的某个地方遇到了堆栈溢出。看latest source我想知道我是否因为某种原因设置错误 - 如果我的配置文件连接包含另一个配置文件连接,则包含....
任何帮助/建议?
更新 - 看http://code.google.com/p/mvc-mini-profiler/wiki/FrequentlyAskedQuestions至少有一个人在1.7中遇到了同样的问题 - 虽然他先做了代码。我会继续玩,看看能不知道该怎么做......
答案 0 :(得分:4)
尝试1.9。通过更新,我刚刚在Application_Start中添加了新的Initialize方法并删除了DbProviderFactories配置部分,现在我使用EF进行SQL分析(即使是2个数据库,其中一个首先是代码,另一个是数据库优先)。
protected void Application_Start()
{
....other code
MiniProfilerEF.Initialize();
}