日期:2014-05-18  浏览次数:20441 次

如何获取asp.net页面每个方法的运行时间
如何获取asp.net页面每个方法的运行时间,就象监测JS方法运行时间那样的

------解决方案--------------------
难道需要每一个方法都写上stopwatch
------解决方案--------------------
函数开始时一个TickCount ,结束前一个TickCount ,两个相减得到毫秒数,当然还有更高精度的计时,搜吧
------解决方案--------------------
探讨

难道需要每一个方法都写上stopwatch

------解决方案--------------------
C# code

        public string dateDiff(DateTime DateTime1, DateTime DateTime2)
        {
            string dateDiff = "";
            try
            {
                TimeSpan ts1 = new TimeSpan(DateTime1.Ticks);
                TimeSpan ts2 = new TimeSpan(DateTime2.Ticks);
                TimeSpan ts = ts1.Subtract(ts2).Duration();
                dateDiff = ts.Days.ToString() + "Days" +
                        ts.Hours.ToString() + ":"
                        + ts.Minutes.ToString() + ":"
                        + ts.Seconds.ToString() + "."
                        + ts.Milliseconds.ToString() ;
            }
            catch
            {

            }
            return dateDiff;
        }

------解决方案--------------------
函数开始及结束都记录个时间。。
------解决方案--------------------
在Global.asax页面写:
protected void Application_BeginRequest(Object sender, EventArgs e)
{
//记录页面开始加载时间
dt = DateTime.Now;

}
protected void Application_EndRequest(Object sender, EventArgs e)
{
DateTime dt2 = DateTime.Now;//页面加载结束时间
TimeSpan ts = dt2 - dt;//获得页面加载花费时间
HQSoft.HQBLL.TB_Log LogBLL = new HQBLL.TB_Log();
HQSoft.HQModel.TB_Log LogModel = new HQModel.TB_Log();
LogModel.LogDate = DateTime.Now.ToLocalTime();
LogModel.LogType = 1;
LogModel.LogSystem = System.Web.HttpContext.Current.Request.Url.ToString();
LogModel.LogText = "页面加载花费时间:" + ts.TotalMilliseconds.ToString() +"毫秒";
LogBLL.Add(LogModel);
//Response.Write("the request takes:" + ts.TotalMilliseconds.ToString() + " milliseconds");
//Response.Write(System.Web.HttpContext.Current.Request.Url.ToString());

}
------解决方案--------------------
探讨
难道需要每一个方法都写上stopwatch

------解决方案--------------------
VS菜单 Analyze -> Launch Performance Wizard ...
------解决方案--------------------
还没碰到这样的需求,stopwatch吧
------解决方案--------------------
这个你在该方法执行的最开始阶段加一个时间,方法结束的时候定义一个时间 相减就是你的方法执行时间了