【发布时间】:2021-06-26 01:18:23
【问题描述】:
我正在尝试从我的数据库中删除重复项。我正在使用 Entity Framework Core 和 .NET 5。EF Core 无法通过以下方式实现我的组:
protected async Task RemoveDuplicates(CryptoInfoContext cryptoContext)
{
try
{
var duplicates = cryptoContext.HistoricalCandles
.GroupBy(x => new { x.StartDate, x.GranularitySeconds })
.Where(x => x.Count() > 1)
.ToList()
.Select(x => x.FirstOrDefault())
.ToList();
cryptoContext.RemoveRange(duplicates);
await cryptoContext.SaveChangesAsync();
}
catch(Exception ex)
{
Console.WriteLine(ex);
}
}
我收到一个错误:
无法翻译给定的“GroupBy”模式。在“GroupBy”之前调用“AsEnumerable”以在客户端对其进行评估
我不想具体化我的所有行来删除重复项。 是否有 group by 的已知问题列表? 我该如何解决这个问题?
【问题讨论】:
-
请寻找有关此错误的其他问题。它每周发布多次。
-
谢谢,我现在明白了。我会尽快发布答案
标签: c# .net-core group-by entity-framework-core linq-to-entities