猿问

如何访问 linq 中等待方法的属性?

我有这个查询,我找不到获取价格值的正确方法(.Amount.GetValueOrDefault())。


private IEnumerable<Product> GetSubsciptionOffers(IEnumerable<StripeProduct> productList)

{

    return productList

        .Select(async product => new Product

        {

            Name = product.Name,

            Id = product.Id,

            Image = new Uri(product.Images.First()),

            Description = product.Description,

            OfferType = OfferTypeEnum.Pro,

            Price = await _planRepo.GetPlanByIdAsync(product.Metadata.First().Value).Amount.GetValueOrDefault()

        });

}

错误是:


任务不包含金额的定义


慕标5832272
浏览 114回答 2
2回答

一只甜甜圈

你必须括号你的await:Price&nbsp;=&nbsp;(await&nbsp;_planRepo.GetPlanByIdAsync(product.Metadata.First().Value)).Amount.GetValueOrDefault()原因是.运算符的优先级高于await。
随时随地看视频慕课网APP
我要回答