System.InvalidOperationException: 'Sequence contains no matching element'

System.InvalidOperationException: 'Sequence contains no matching element'

我可以知道为什么那个错误一直指向“String isEmailVerified ....”吗?

public JsonResult GetMemberCounts([FromBody] ChartFilterRequest filter)
        {
            DateTime startDate = DateTime.Parse(filter.MainFilter.First(m => m.Name == "startDate").Value as string);
            DateTime endDate = DateTime.Parse(filter.MainFilter.First(m => m.Name == "endDate").Value as string);
            String isEmailVerified = filter.MainFilter.First(m => m.Name == "isEmailVerified").Value as string;


            var data = _dashboardComponent.GetMemberCount(startDate, endDate, isEmailVerified);

            return new JsonResult(data);
        }

尝试使用 FirstOrDefaultLastOrDefault 而不是 FirstLast,这些方法将 return 调用它们的类型的默认值如果没有元素与您作为参数提供的 lambda 表达式匹配。

在您的项目中,您只需使用 filter.MainFilter.First(xxxx) 来 select 数据,因此如果没有元素匹配您作为参数提供的 lambda 表达式,First() 将抛出异常,所以这里会报这个错误。