这样看起来很棒http://coderjournal.com/2010/10/timing-the-execution-time-of-your-mvc-actions/(这里也提到了堆栈溢出的地方)
问题是我从这种方法中得到的测量必须是错误的;
我添加了另一个秒表,启动了动作中的第一件事情,并在返回之前停止.
例:
>秒表里面的方法=> 10ms(序列化到json在这里省略,所以我可以明白,它比现实更短)
>秒表属性(上面的代码)=> 676ms
> Firefox表示请求=> 70ms
解决方法
In prevIoUs versions of ASP.NET MVC,
action filters are create per request
except in a few cases. This behavior
was never a guaranteed behavior but
merely an implementation detail and
the contract for filters was to
consider them stateless. In ASP.NET
MVC 3,filters are cached more
aggressively. Therefore,any custom
action filters which improperly store
instance state might be broken.
我建议在OnActionExecuting和save it to HttpContext.Current.Items
中实例化新的秒表 – 然后您可以在OnActionExecuted中检索它并打印出结果.
原文地址:https://www.jb51.cc/csharp/94889.html
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。