LINQ / VB.NET选择与数据集不同

时间:2010-08-20 22:25:05

标签: vb.net linq

我在单个表格数据集中有一个圆柱状数据表。

我只想将此数据集转换为不同的行。这是我的代码,它给出了编译错误'。'预期。我究竟做错了什么? (我尝试添加。,仍然是同样的错误)。我知道这是一个非常明显的事情。 PLZ救救我! ;)

提前多多谢谢!

Dim query = _
    From email In ds.Tables(0) _
    Select email.Field<string>("Email").Distinct()
编辑:DOH!混合VB / C#语法在这里!我改为(Of String)并且它的工作原理......但是现在'查询'是一个不可数的字符集合......不是数据表......所以如何在不手动循环的情况下轻松转换回来? Plz建议!

2 个答案:

答案 0 :(得分:5)

您正在将Distinct方法应用于每个字符串,而不是查询的结果。由于字符串是字符集合,您也可以将扩展方法应用于它们。

在查询周围加上括号:

Dim query = _
  (From email In ds.Tables(0) _
  Select email.Field(Of String)("Email")).Distinct()

答案 1 :(得分:4)

您可以在将值输入数据表后使用不同的值:

dtFiltered = dtNotFiltered.DefaultView.ToTable(True, "RAMI_ISSA") 'Get distinct values (by stting the first parameter to True)