Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/290.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# EF核心:独特且有序的奇怪行为_C#_Entity Framework - Fatal编程技术网

C# EF核心:独特且有序的奇怪行为

C# EF核心:独特且有序的奇怪行为,c#,entity-framework,C#,Entity Framework,我将旧项目迁移到新的EF Core,发现了这个问题 我的旧代码: private IQueryable<SeriesData> GetSeriesData(IQueryable<Series> query, long? userId = null) { DateTime date = DateTime.Today.AddMonths(1); IQueryable<SeriesData> seriesDataQuery = query.Sele

我将旧项目迁移到新的EF Core,发现了这个问题

我的旧代码:

private IQueryable<SeriesData> GetSeriesData(IQueryable<Series> query, long? userId = null)
{
    DateTime date = DateTime.Today.AddMonths(1);

    IQueryable<SeriesData> seriesDataQuery = query.Select(x => new SeriesData
    {
        Series = x,
        Subscribed = userId.HasValue && x.Subscriptions.Any(y => y.UserId == userId),
        CurrentSeasonNumber = x.Episodes.Where(z => z.ReleaseDate.HasValue && z.ReleaseDate < date).Max(y => y.SeasonNumber),
        Channel = x.Channel,
        Country = x.Channel.Country,
        ReleaseGroups =
            x.Episodes.SelectMany(z => z.Releases)
                .Select(y => y.ReleaseGroup)
                .Distinct()             // 1
                .OrderBy(y => y.Name)   // 2
                .Select(r => new ReleaseGroupData
                {
                    ReleaseGroup = r,
                    Subscribed =
                        userId.HasValue &&
                        x.Subscriptions.Any(y => y.UserId == userId && y.ReleaseGroupId == r.Id)
                }).ToList()
    });

    return seriesDataQuery;
}
private IQueryable GetSeriesData(IQueryable查询,long?userId=null)
{
DateTime日期=DateTime.Today.AddMonths(1);
IQueryable seriesDataQuery=query.Select(x=>newseriesdata
{
系列=x,
Subscribed=userId.HasValue&&x.Subscriptions.Any(y=>y.userId==userId),
CurrentSeasonNumber=x.scents.Where(z=>z.ReleaseDate.HasValue&&z.ReleaseDatey.SeasonNumber),
通道=x.通道,
国家=x.Channel.Country,
释放组=
x、 剧集。选择多集(z=>z.Releases)
.选择(y=>y.ReleaseGroup)
.Distinct()//1
.OrderBy(y=>y.Name)//2
.选择(r=>new ReleaseGroupData
{
ReleaseGroup=r,
订阅=
userId.HasValue&&
x、 Subscriptions.Any(y=>y.UserId==UserId&&y.ReleaseGroupId==r.Id)
})托利斯先生()
});
返回序列数据查询;
}
当我执行这个查询时,我得到“InvalidOperationException:Sequence包含多个元素”异常
但是如果我交换第1行和第2行,一切都会正常。

我看不出任何情况下,更改distinct和orderby的顺序会触发异常。在我看来,您似乎发现了一个bug,应该将其发布到他们的support forumsI上。我看不出任何情况下,更改distinct和orderby的顺序会触发异常。听起来你发现了一个bug,应该把它发布在他们的支持论坛上