使用select,Where,Count和Distinct的C#LINQ Lambda查询

时间:2015-01-07 23:11:01

标签: c# linq lambda

我是linq的新手,我需要查询帮助。我在数据表中有3列。我需要从col3中获取唯一值的计数,其中col1和Col2包含某些值。这是我试过的最后一段代码,但它不起作用。有人可以帮我这个吗?

感谢

AD = dt.AsEnumerable()
    .Where(x => x.Field<string>("Col1").Equals("Value1") 
             || x.Field<string>("Col2").Equals("Value2"))
    .Select(s => s.Field<string>("Col3")
    .Distinct().Count());

2 个答案:

答案 0 :(得分:2)

我在.Select(s => s.Field<string>("Col3")错过了一个右括号,试试这个:

AD = dt.AsEnumerable()
    .Where(x => x.Field<string>("Col1").Equals("Value1") 
             || x.Field<string>("Col2").Equals("Value2"))
    .Select(s => s.Field<string>("Col3")) // <-- add this
    .Distinct().Count();   // <-- remove this

答案 1 :(得分:0)

var q1  = (from persons in _db.Table<Person>()
            where persons.firstName==fname && persons.lastName==lname group
 persons.age by persons.age ).Count();

我已经在某些&#34;测试&#34;使用sqlite-net库的案例 - 它似乎工作。 虽然已经有了解决方案 - 他们使用的是不同的样式,所以我决定将其发布到