过滤项目后找到最小差异会导致“序列不包含任何元素”

时间:2019-02-17 12:57:12

标签: c# linq

这些是我的课程:

List<MyDate> Dates

public class MyDate
{
    public DateTime FromDate { get; set; }
    public List<Tuple<DateTime, List<MyEnum>>> ToDates { get; set; }
}

我正在尝试获取最接近FromDate的{​​{1}}属性,但是我需要它仅对回答originDate的项目进行比较。

Where(d => d.ToDates.Any(t => t.Item2.Contains(MyEnum.Value1)))

问题是当所有项目都没有回答long nearestDiff = myList .Where(d => d.ToDates.Any(t => t.Item2.Contains(MyEnum.Value1))) .Select(d => d.FromDate) .Min(date => Math.Abs((date - originDate).Ticks)); 语句时,Where语句抛出以下异常:

  

System.InvalidOperationException:'序列不包含任何元素'

我尝试按照answer的建议使用Select,但是我需要针对所有值(不仅是单个值)计算Min值。

0 个答案:

没有答案