-1

这是代码:

Public Function GetUniqueLocation() As List(Of LoginUser)
    Return db.LoginUsers.Select(Function(p) p.LocID).Distinct().ToList()
End Function

这是代码错误!

Value of type 'System.Collections.Generic.List(Of Integer?)' cannot be converted to 'System.Collections.Generic.List(Of LoginUser)
4

1 回答 1

1

错误消息很容易准备好:您正在尝试List(Of Integer)从声明为List(Of LoginUser). 没有办法它会工作。

似乎您正在尝试LoginUser为每个LocID属性值获取一个。但取而代之的是,您只是返回属性值本身的 disting 集。

而不是使用Distinct,使用GroupByFirst

Public Function GetUniqueLocation() As List(Of LoginUser)
    Return db.LoginUsersGroupBy(Function(p) p.LocID).Select(Function(g) g.First()).ToList()
End Function

或者,如果您真的只想返回 integers,请将您的方法声明更改List(Of Integer)为返回类型:

Public Function GetUniqueLocation() As List(Of Integer)
    Return db.LoginUsers.Select(Function(p) p.LocID).Distinct().ToList()
End Function
于 2013-11-04T20:41:00.083 回答