首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ASP.NET Core中的异步

ASP.NET Core中的异步
EN

Stack Overflow用户
提问于 2021-06-12 16:05:05
回答 1查看 89关注 0票数 1

我对异步编程很陌生。FirstOrDefaultAsync正在抛出一个错误

列表不包含FirstOrDefaultAsync()的定义

有人能解释我做错了什么吗?

代码语言:javascript
复制
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using Microsoft.EntityFrameworkCore;

namespace PatientManagement.Models
{
    public class PatientService : IPatientService
    {
        private List<Patient> patients;

        public PatientService()
        {
            patients = new List<Patient>()
            {
                new Patient(){ ID = 1, Name = "Akash", Email = "aakash1027@gmail.com" },
                new Patient(){ ID = 2, Name = "John", Email = "John@gmail.com" },
                new Patient(){ ID = 3, Name = "Mike", Email = "Mike@gmail.com" },
            };
        }

        public async Task<Patient> GetPatient(int id)
        {
            return await patients.FirstOrDefaultAsync(x => x.ID == id);
        }
    }
}
EN

回答 1

Stack Overflow用户

发布于 2021-06-12 16:20:48

问题是列表中确实没有FirstOrDefaultAsync方法!

异步代码适用于这样的情况,例如,当您跨越边界时,必须等待数据库或其他进程进行工作。您的情况是不同的:您的流程实际上必须在列表中找到此记录。因此,您应该只使用普通的同步FirstOrDefault:

代码语言:javascript
复制
    public Patient GetPatient(int id)
    {
        return patients.FirstOrDefault(x => x.ID == id);
    }
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67950639

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档