System.NotSupportedException

时间:2016-04-27 08:29:06

标签: database vb.net entity-framework wcf-web-api

我已经得到了这个" System.NotSupportedException"现在有一段时间的异常,我用完了选项。当我尝试从浏览器访问findAllUsers()函数时出现此错误。

我有模特课:

Public Class pUsers

Public Property UserId() As Long
Public Property Username() As String
Public Property Password() As String
Public Property Email() As String
Public Property Cell() As String
Public Property DateCreated() As Date
Public Property LastLogin() As DateTime

End Class

ServiceAPIserver类有一个如下所示的函数:

 Public Function findAllUsers() As List(Of pUsers) Implements IServiceAPIServer.findAllUsers
    Using mde As New AllMyAPIEntities()
        Return mde.UserEntities.[Select](Function(ue) New pUsers() With {
            .UserId = ue.UserId,
            .Cell = wrapper.DecryptData(ue.Cell),
            .DateCreated = ue.DateCreated,
            .Email = wrapper.DecryptData(ue.Email),
            .LastLogin = ue.LastLogin,
            .Password = ue.Password,
            .Username = wrapper.DecryptData(ue.Username)}).ToList()
    End Using
End Function

1 个答案:

答案 0 :(得分:0)

在设计时编写LINQ to Entities代码时,它是LINQ所以支持所有LINQ语法。但在运行时,底层提供程序不支持某些内容。最值得注意的是,您的LINQ查询必须能够转换为可以对数据库执行的SQL代码。如果wrapper.DecryptData是您自己的VB代码中的方法,那么您的数据库对此一无所知,因此无法将其转换为SQL,因此LINQ to Entities不支持它。