如何为所有查询请求永久启用 Apollo Tracing with Hot Chocolate?

How do I enable Apollo Tracing with Hot Chocolate for all query requests permanently?

Hot Chocolate.Net Core 一起使用时,我正在创建这样的方案:

public class Startup
{
    public void ConfigureServices(IServiceCollection services)
    {
        // Here I register my services / repositories; omitted for brevity

        services.AddGraphQL(sp => Schema.Create(c =>
        {
            // Here I register my schema types and so on; omitted for brevity
        }));
    }

     // Code omitted for brevity
}

但实际上如何为所有请求启用内置 A​​pollo Tracing?它与 .Net Framework 的工作方式是否相同?

基本上,通过将 TracingPreference 选项设置为 TracingPreference.Always

下面的代码片段展示了它的样子。

services.AddGraphQL(sp => Schema.Create(c =>
{
    // Here goes the schema definition which is omitted for brevity purpose
}),
new QueryExecutionOptions
{
    TracingPreference = TracingPreference.Always
});

是的,它在 .Net Framework 中的工作方式相同。 .Net Core 和 Framework 中的 API 保持相同,比方说 99% 相同。这里的不同之处只是周围,这意味着包装 DI 配置的 Startup class。

有关 Apollo Tracing 的更多信息,请前往 here