LINQ返回EnumerableRowCollection

时间:2015-10-12 16:56:00

标签: vb.net linq

我需要根据具体ID获取费用名称,我试图直接获取列而不是整行。

我有以下代码

Dim fee As EnumerableRowCollection(Of String) = (From row In dtFee.AsEnumerable _
                                    Where row.Field(Of SqlInt32)("idFee").Value = idFee _
                                    Select row.Field(Of SqlString)("name").Value)

但是当我通过以下方式访问它时:

lblIdFee.Text = fee.FirstOrDefault

我得到无效转换的例外,但是如果将结果声明为

  Dim fee = ...

如果我通过toString()方法得到费用的结果,因为我没有可用的FirstOrDefault,我得到:

System.Data.EnumerableRowCollection`1[System.String]

我不知道是否遗漏了一些参考图书馆。

1 个答案:

答案 0 :(得分:0)

将变量类型更改为

Dim fee As IEnumerable(Of String) ...

您正在投射到一组字符串值,而不是DataRow s

的集合