1

我有一个带有如下服务调用的 ServiceStack 服务:

    public class MyService : Service
    {
        public object Get(MyServiceRequest request)
        {
            using (Profiler.Current.Step("Getting Data"))
            {
                // code that gets data

                using (Profiler.Current.Step("Doing work with data"))
                {
                    // code that does work
                }
            }
            return response;
        }           
    }

和这样的 global.asax.cs :

public class Global : System.Web.HttpApplication
{

    protected void Application_Start(object sender, EventArgs e)
    {
        new AppHost().Init();
    }

    protected void Application_BeginRequest(object sender, EventArgs e)
    {
        if (Request.IsLocal)
            Profiler.Start();
    }

    protected void Application_EndRequest(object sender, EventArgs e)
    {
        Profiler.Stop();
    }       
}

我的问题是,当我通过浏览器测试服务调用时,我只能看到整个请求的配置文件信息。“show time with children”和“show trivial”没有提供任何更详细的信息。我还在每个using语句中放置了断点以查看Profiler.Current并注意到在每种情况下它的Children属性都是空的。我做错了吗?他们还有其他我可以做的事情来解决这个问题吗?

4

1 回答 1

1

出于某种原因,在方法中设置level参数可以解决我的问题。这很奇怪,因为如果没有提供参数,这是默认值。那好吧。继续。Profile.InfoStepProfile.Info

于 2013-05-17T20:16:17.243 回答