首先为EF-db设置mvc-mini-profiler

时间:2011-07-27 10:54:22

标签: entity-framework mvc-mini-profiler

我正在尝试将迷你探查器与旧式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中遇到了同样的问题 - 虽然他先做了代码。我会继续玩,看看能不知道该怎么做......

1 个答案:

答案 0 :(得分:4)

尝试1.9。通过更新,我刚刚在Application_Start中添加了新的Initialize方法并删除了DbProviderFactories配置部分,现在我使用EF进行SQL分析(即使是2个数据库,其中一个首先是代码,另一个是数据库优先)。

protected void Application_Start()
{
    ....other code

    MiniProfilerEF.Initialize();
}