如何通过IEnumerable <ilist <string>&gt;的列索引获得Distinct()在Linq </ilist <string>

时间:2015-04-03 10:14:17

标签: c# c#-4.0

我从IEnumerable<IList<string>> distinct()返回数据行值。我想获得通过列索引的列的distinct()值。我怎么能得到这个。

    private void AddData(IEnumerable<IList<string>> dataList, IList<string> header)
    {
        try
        {
            int val = header.IndexOf("Package Code");
            //dataList = dataList.Select(x=>x.ToList().Distinct())
                // For the above I have to get distict recod data values 

            foreach (var row in dataList)
            {

            }
        }
        catch
        {
            throw new ArgumentException("Column Names  not matching");
        }
    }

1 个答案:

答案 0 :(得分:1)

如果您只想要单个列的不同值:

IEnumerable<IList<string>> dataList = ...;

int val = ...;
IEnumerable<string> distincts = dataList.Select(x => x[val]).Distinct();

目前还不清楚你想要什么...有些人经常要求某些字段的Distinct(),但是返回完整行......这是{{1}的每个不同值的第一行}}

x[val]