c# LINQ:获取每一行的计数

本文关键字:一行 LINQ 获取 | 更新日期: 2023-09-27 18:12:40

这里的查询用于检索我的base中的所有计算机。

我想在对象GridCompte中添加一个数字,以便计算列表内的元素(1,2,3…):

var comptes = (from c in Comptes                           
               join s in Societies on c.IdSoc equals s.IdSoc    
               select new GridCompte
               {
                   SocCompteId = c.IdCompte,                               
                   Name = c.Name,
                   Nb = ??? COUNT ???,
                   .....
                   SocName = s.Name
               }).ToList();

我尝试使用语句,但我没有设法实现我的目标。

有什么建议吗?

c# LINQ:获取每一行的计数

首先准备您的linq只为您想要获得的字段

var comptes = from c in Comptes                           
                   join s in Societies on c.IdSoc equals s.IdSoc    
                   select new 
                   {
                       SocCompteId = c.IdCompte,                               
                       Name = c.Name,                        
                       .....
                       SocName = s.Name
                   };

现在使用Select

中提供的索引选项
var finalComptes =  (comptes.AsEnumerable()
                .Select((comptes, index) => new GridCompte()
                        {
                            SocCompteId = c.IdCompte,                               
                            Name = c.Name,
                            Nb = index + 1,
                            .....
                            SocName = s.Name                               
                        }).ToList();