0
我正在编写一个方法,该方法应该返回匹配电子邮件字段的列表中的所有记录。但我目前的执行情况,我用.FirstOrDefault();
如何返回列表中的所有元素匹配字段<Foo>?
我可以通过其他方法过滤使用智能感知和使用ToList();
return orderList.Where(c => c.Email == email).ToList();
试过只返回的第一个元素,但我得到一个错误,指出它由于结果不是List而无法转换。我从中明白,结果不是类型列表,而是如何返回列表。
错误30无法隐式转换类型“System.Collections.Generic.List”到“MongoDBApp.Models.OrderModel”
任何人都知道我可以返回完整的结果集?
这是目前仅返回匹配的电子邮件按键的第一或默认元素的方法:
public async Task<OrderModel> GetByEmailAsync(string email)
{
if (orderList == null)
await LoadDbAsync();
return orderList.Where(c => c.Email == email).FirstOrDefault();
}
而且orderList这类型的,OrderModel:
private static List<OrderModel> orderList = new List<OrderModel>();
将您的GetByEmailAsync返回类型更改为任务>。这个错误并不是说结果不是一个列表,而是告诉你它不能将你要返回给一个OrderModel的OrderModel的列表 –
KiwiPiet