相关疑难解决方法(0)

实体框架组采用最老的mySQL

我有一个庞大的项目列表,需要将它们分组为一个属性.然后应该选择每组中最老的一组.

简化示例:选择每个用户中最早的用户FirstName.

using (ED.NWEntities ctx = new ED.NWEntities())
{
    IQueryable<ED.User> Result = ctx.User.GroupBy(x => x.FirstName)
                                    .Select(y => y.OrderBy(z => z.BirthDate)
                                    .FirstOrDefault())
                                    .AsQueryable();
}
Run Code Online (Sandbox Code Playgroud)

课程User:

public partial class User
{
    public int UserID { get; set; }
    public string FirstName { get; set; }
    public string LastName { get; set; }
    public Nullable<System.DateTime> BirthDate { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

我想知道为什么这个语句花了这么长时间,直到我设置了一个断点Result并查看生成的SQL语句:

{SELECT
`Apply1`.`UserID`, 
`Apply1`.`FIRSTNAME1` AS `FirstName`, 
`Apply1`.`LastName`, 
`Apply1`.`BirthDate`
FROM (SELECT
`Distinct1`.`FirstName`, 
(SELECT
`Project2`.`UserID`
FROM `User` AS …
Run Code Online (Sandbox Code Playgroud)

c# mysql linq entity-framework

9
推荐指数
1
解决办法
394
查看次数

标签 统计

c# ×1

entity-framework ×1

linq ×1

mysql ×1