見てみましょう。完全に有効なLINQtoEntitiesクエリがあり、SqlServerプロバイダーでは機能し、MySQLプロバイダーでは機能しません。私にはMySQLプロバイダーのバグのように聞こえますが、他に何がありますか?しかし、どれですか?それがどのように役立つかはわかりませんが、#78610> ( ASPMVCMsSqlからMySQLへの移行
によって開始されます SO投稿)、#76663
の複製としてマーク 。または
そのため、MySQLコネクタにはOrderByに関する問題があります サブクエリで。回避策として、(可能であれば)MaxByを実装する別の方法を提案できます。 、つまり、seq.OrderByDescending(col).FirstOrDefault()の代わりに(擬似コードで) seq.FirstOrDefault(col == seq.Max(col))を使用します 動作するパターン:
var Result = ctx.Items
.Where(x => x.Contact.Country == Country)
.GroupBy(p => p.Name)
.Where(g => !g.Any(x => x.Value == "X"))
.Select(g => g.FirstOrDefault(e => e.Date == g.Max(e1 => e1.Date)))
.ToList();