0

遅延をなくすために実行時間を追跡しようとしている次のアクションがあります。

 public JsonResult DoSomething(IncidentReportSearchCriteria searchCriteria)
 {
    //search database with searchCriteria
    //get the data, do something with it
    //return success in JSON format
    return Json(new { success = true });
 }

Action DoSomethingの実行が完了するまでにかかる時間を調べるためのツールはVS2010にありますか?言い換えれば、最後の直前}

時刻をログに書き込んでいますが、終了時刻をログに書き込んだ後、遅延が発生します}。あなたが見ることができるように私があまり返さないので、帯域幅は問題ではありません。

4

1 に答える 1

1

アクションフィルターを作成して、実行時間を測定できます。

public class ProfileAttribute: ActionFilterAttribute
{
   private StopWatch timer;

   public override void OnActionExecuting(ActionExceutingContext filterContext)
   {
      timer = StopWatch.StartNew();
   }

   public override void OnResultExecuted(ResultExecutedContext filterContext)
   {
      timer.Stop();
      filterContext.HttpContext.Response.Write("Action method elapsed time: " + timer.Elapsed.TotalMilliSeconds.ToString());
   }
}

[Profile]
public JsonResult DoSomething(IncidentReportSearchCriteria searchCriteria)
{
}
于 2012-07-23T17:21:31.550 に答える