热巧克力 v11 中的 DataLoaderOptions.AutoDispatch

Posted

技术标签:

【中文标题】热巧克力 v11 中的 DataLoaderOptions.AutoDispatch【英文标题】:DataLoaderOptions.AutoDispatch in hotchocolate v11 【发布时间】:2021-11-24 22:03:19 【问题描述】:

我正在尝试将 HotChocolate 从 v10 迁移到 v11,并面临单元测试问题。 为了测试数据加载器的负载,我有这段代码运行良好。

var loader = new CompanySettingDataLoader(api, new DataLoaderOptions<string>

    AutoDispatching = true
);

var result = await loader.LoadAsync("Param2", CancellationToken.None);

在 v11 迁移指南中,我发现我应该迁移到这种语法,但 DataLoaderOptions 中不再存在 AutoDispatch,因此我的 DataLoader 永远不会触发,并且我的测试会锁定二进制文件。

var scheduler = new BatchScheduler();

var loader = new CompanySettingDataLoader(scheduler, api, new DataLoaderOptions<string>

    // here ?
);

var result = await loader.LoadAsync("Param2", CancellationToken.None);

由于热巧克力文档很差而且迁移指南不完整,有人知道我缺少什么吗?

【问题讨论】:

【参考方案1】:

使用

var scheduler = new AutoBatchScheduler();

var loader = new CompanySettingDataLoader(scheduler, api);

var result = await loader.LoadAsync("Param2", CancellationToken.None);

【讨论】:

以上是关于热巧克力 v11 中的 DataLoaderOptions.AutoDispatch的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 GraphQL 突变进行更新(热巧克力)

订阅热巧克力“RESULT_TYPE_NOT_SUPPORTED”

83.『Ruby美食』自制巧克力淋酱(homemade chocolate sauce)

ActiveReports报表控件V11 SP1版本正式发布!

React 应用程序中的 Auth0 Lock v11 未捕获“已验证”事件

从 v11 迁移后,无法在 discord.js v12 中从服务器设置用户状态和记录用户数量