我有一个运行缓慢的asp.net程序.我想剖析生产服务器以查看发生了什么,但我不想显着减慢生产服务器的速度.
一般来说,标准生产箱或只是本地开发箱是标准做法吗?另外,你建议用什么程序完成这个?
当jquery $ .ajax函数调用asp.net MVC控件时,我偶然发现了一个非常奇怪的性能不佳问题.该控件执行的数据库操作需要403毫秒,但根据Firebug,总的$ .ajax调用是3400毫秒,这是相当多的额外开销.我需要优化性能,但我不清楚这种开销来自何处.
这是代码.在我的控制器中,我有
public JsonResult SetSearchResults(Criteria searchCriteria)
{
SearchResult myReportsResult = _repository.GetResults(searchCriteria);
//the statement above takes 403 ms
return Json(myReportsResult);
}
public SearchResult GetResults(SearchCriteria searchCriteria)
{
SearchResult result = SearchResult();
DataTable dbResults = _da.GetDBResults(searchCriteria);
List<IncidentReportHeader> irs = new List<IncidentReportHeader>();
for (int i = 0; i < dbResults.Rows.Count; i++)
{
IncidentReportHeader ir = new IncidentReportHeader();
//populate all the properties of the ir object here,
irs.Add(ir);
}
result.Reports = irs;
return result;
}
//models
public class SearchResult
{
private …Run Code Online (Sandbox Code Playgroud)