我正在创建一个ASP.NET WebAPI 2控制器。它有效,但我很困惑。好像我正在返回一个List< ..>而不是任务
请向我解释为什么返回列表是正确的。
public class AttendeePriceController : ApiController
{
// GET api/<controller>
public async Task<List<AttendeePrice>> Get()
{
List<AttendeePrice> attendeesPriceList;
using (var db = new MyContext())
{
attendeesPriceList = await db.AttendeePrices.ToListAsync();
}
return attendeesPriceList;
}
答案 0 :(得分:7)
async
关键字将您的方法转换为状态机。该转换的一部分是生成表示方法的Task
。当您“返回”某个值时,状态机将使用值完成该任务。
有关详细信息,请参阅我的async
intro或MSDN docs。