LINQ是一个以列表作为属性的实体

本文关键字:属性 实体 一个以 列表 LINQ | 更新日期: 2023-09-27 18:14:01

我正试图查询linq的视图,我需要帮助。视图返回以下结构:

ID Col1 Col2 Col3
1   A    B    1
1   A    B    2
1   A    B    3
1   A    B    4

等等……

我有一个实体,它有一个列表作为字段

class MyEntity {
    int _col1;
    string _col2;
    List<int> _col3 = new List<int>();
}

我怎么能得到填充列表,并得到所有的实体"MyEntity"在同一时间?

我的尝试是不完整的,所以我问:

List<MyEntity> allObjects = (from d in _dc.myView
 where id==1 %% col1==A && cole2==B
select new MyEntity(d.id,d.col1,d.col2)).Distinct().List();

谢谢你,

LINQ是一个以列表作为属性的实体

我不完全理解这个问题,但看起来你需要一个GROUP BY查询。下面是如何在LINQ查询语法中做到这一点:

MyEntity entity = from e in objectContext.yourTableName
                  group e by new { e.Col1, e.Col2 } into grp
                  select new MyEntity
                  {
                      _col1 = grp.Key.Col1,
                      _col2 = grp.Key.Col2,
                      _col3 = grp.Select(e => e.Col3).ToList()
                  };