You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在RavenDB中异步关联查询多张表?

RavenDB异步会话关联查询等效写法

针对你提供的同步查询代码,异步会话下的等效写法只需将同步的Load方法替换为异步的LoadAsync,调用时添加await关键字,同时最终执行查询也要使用异步集合方法:

var q = from order in dq
        let company = await session.LoadAsync<Company>(order.Company)
        select new
        {
            order.Freight,
            company.Name
        };

// 异步执行查询获取结果
var results = await q.ToListAsync();

关键注意点

  • 确保使用的是AsyncDocumentSession实例(通过store.OpenAsyncSession()获取)
  • 所有会话异步操作都需添加await关键字
  • 查询最终执行必须调用异步扩展方法(如ToListAsync、FirstOrDefaultAsync等),避免线程阻塞

内容的提问来源于stack exchange,提问作者Tomasz

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.02 06:00:47