0
这是我有的LINQ查询,它获得每个选定列的唯一值,并将它们存储为一个字典中的列表。如何简化这个LINQ查询与不同的每列到一个语句
var serialTable = serialNoAdapter.GetData();
var distinctValue = (from row in serialTable
select new
{
row.CodePractice,
row.LockType,
row.Software
}).Distinct().ToList();
var softwareValue = distinctValue.Select(p => p.Software).Distinct().ToList();
var codeValue = distinctValue.Select(p => p.CodePractice).Distinct().ToList();
var lockValue = distinctValue.Select(p => p.LockType).Distinct().ToList();
return new Dictionary<string, List<string>>()
{
{"software", softwareValue},
{"codepractice", codeValue},
{"locktype", lockValue}
};
唯一的问题是它被分解成几个语句。我的问题是,是否有可能将其简化并将其压缩为单个语句?
用这种方法,我认为你是查询数据库3次而不是1 ...是这样吗? – Graviton 2009-03-06 05:37:00