我需要使用LINQ从表中获取不同的行值。我使用的查询是
var results = (from statename in dsobject.dbo_statetable select statename).Distinct();
它给出了名为“dbo_statetable”的表的所有行,但我只需要不同的statename。要实现这一目标的查询应该是什么?
它的sql等价物是select distinct statename from dbo_statetable
答案 0 :(得分:1)
您需要指定属性:
var results = (from x in dsobject.dbo_statetable select x.Statename).Distinct();
// ^^^^^^^^^^
from
之后的变量未指定列。它就像SQL中的表别名。您的LINQ语句大致相当于此SQL:
SELECT DISTINCT * FROM dbo_statetable AS statename
答案 1 :(得分:0)
dsobject.dbo_statetable.Select(s => s.statename).Distinct()