小编Tom*_*ast的帖子

如何不等待就返回Task <T>

是否可以从某个方法返回任务,该方法先调用多个Task<T>返回方法,然后返回某种类型,该类型包括先前调用的结果而无需使用await

例如,以下内容很简单:

public Task<SomeType> GetAsync() => FirstOrDefaultAsync();
Run Code Online (Sandbox Code Playgroud)

但是,我想做这样的事情:

public Task<SomeType> GetAsync()
{
    var list = GetListAsync();   // <-- Task<List<T>>
    var count = GetCountAsync(); // <-- Task<int>

    return new SomeType // <-- Obviously compiler error
    {
        List  /* <-- List<T> */ = list,  // <-- Also compiler error
        Count /* <-- int     */ = count, // <-- Also compiler error
    };
}
Run Code Online (Sandbox Code Playgroud)

是否可以这样做而无需编写:

public async Task<SomeType> GetAsync()
{
    return new Type2
    {
        List = await GetListAsync(),
        Count …
Run Code Online (Sandbox Code Playgroud)

c# async-await

1
推荐指数
1
解决办法
140
查看次数

标签 统计

async-await ×1

c# ×1