小编WVD*_*ick的帖子

使用mvc-mini-profiler降低EF分析性能

当我使用下面的函数创建我的上下文时,分析器显示从标准EF(版本4)上下文创建方法增加大约300ms.还有另一种方法可以做到更好的表现吗?它失败了性能分析的目的.

    public static Models.MyEntities GetContext()
    {
        var profiler = MiniProfiler.Current;
        var sqlConn = new SqlConnection(ConfigurationManager.ConnectionStrings["MyConnString"].ConnectionString);
        var profiledConnection = MvcMiniProfiler.Data.ProfiledDbConnection.Get(sqlConn, profiler);
        return ObjectContextUtils.CreateObjectContext<Models.MyEntities>(profiledConnection);
    }
Run Code Online (Sandbox Code Playgroud)

第一个是使用上面的函数来创建上下文.第二种是使用标准的EF上下文创建方法.以下是使用mvc-mini-profiler的性能差异:

Profiler EF上下文:89.1
一些数据库命中:317.9

正常EF上下文:0.1
一些数据库命中:7.4

更新2:我在Visual Studio中进行了一些分析,看起来主要的耗时操作是MvcMiniProfiler.Helpers.StackTraceSnippet.Get(),并且在其中有一个对System.Diagnostics.StackTrace..ctor(bool)的调用.这需要很长时间才能完成,似乎是导致上述延迟的原因.

profiling entity-framework asp.net-mvc-3 mvc-mini-profiler

9
推荐指数
1
解决办法
1151
查看次数

在查询字符串中使用"popup = 1"时,无法找到mini-profiler-results

重现问题的步骤:

  1. 按照步骤将分析器添加到项目中
  2. 该项目位于虚拟目录中
  3. 无法找到"http:// localhost/VirtualDirectory/mini-profiler-results?id = 00f8651d-ebbf-443d-b60d-d83f950adf6a&popup = 1".404.
  4. 找到"http://localhost/VirtualDirectory/mini-profiler-includes.less?v = 2.1.4183.14740"的URL,如果从"迷你探查器结果"URL中删除"popup = 1",不要得到404.

我正在使用最新的6/20/2011(1.3),使用NuGet,MVC3,VS2010,Knockout.js和jQuery 1.5.2.

有人有什么想法吗?

编辑:我已经加入这是一个问题在这里.

asp.net-mvc-3 mvc-mini-profiler

6
推荐指数
1
解决办法
805
查看次数

Context.User在Signalr 2.0 Hub中为空

我正在使用VS 2013 Express和标准MVC5模板来创建一个新的干净应用程序.身份验证已启用,我可以正常登录该网站.我可以在控制器中看到用户上下文,但是当我添加Signalr时,我无法让Hub注册认证已经发生.

集线器中的Context.User为空.使用Signalr 2.0.2和所有相关的OWIN包.

asp.net-mvc signalr

5
推荐指数
1
解决办法
2306
查看次数