LINQ to Entities无法识别该方法(方法无法转换为商店表达式)

时间:2017-01-26 11:58:41

标签: vb.net entity-framework linq

我收到异常...... LINQ to Entities无法识别方法'System.Object CompareObjectEqual(System.Object,System.Object,Boolean)'方法,并且此方法无法转换为商店表达。

我的实体有一个包含3个字段的表 A_Id 是一个自动编号整数, TidFk 是一个整数, AuditNotes 是一个Nvarchar(最大) ,而不是Null,默认为''

我的模型有以下内容。

Public Class Audit

    Public Property AId As Integer
    Public Property TIdFk As Integer
    Public Property AuditNote As String

    Public Sub New()
        AId = 0
        TIdFk = 0
        AuditNote = ""
    End Sub

    Public Sub GetAuditFor(tID)

        Dim de As New EHREntities

        Try
            Dim aud = (From a In de.Tbl_Audit
                       Where a.TidFk = tID
                       Select a).FirstOrDefault()

            If IsNothing(aud) Then
                AId = 0
                TIdFk = tID
                AuditNote = ""
            Else

                AId = aud.A_id
                TIdFk = aud.TidFk
                AuditNote = aud.AuditNote.ToString().Replace("<<", "<b>").Replace(">>", "</b>").Replace("<>", " <span class="" error"">&#8226;</span> ")

            End If

        Catch ex As Exception

            AId = 0
            TIdFk = tID
            AuditNote = "<span class=""error"">Error! </span>" & ex.Message

        Finally
            de.Dispose()
        End Try

    End Sub
End Class

我的控制器有......

Function FetchAuditFor(tId As Integer) As PartialViewResult

        Dim auditNote As New Audit

        auditNote.GetAuditFor(tId)

        Return PartialView("_AuditNote", auditNote)

    End Function

Class因Sub GetAuditFor(tID)...

中的上述异常而失败

我已经尝试了所有我知道的确定异常的原因但是失败了...例外提到布尔但没有布尔...任何帮助都赞赏。

1 个答案:

答案 0 :(得分:0)

AMATEUR!... Public Sub GetAuditFor(tID)应该是Public Sub GetAuditFor(tID As Integer) ....这是生命中的一小时我不会回来!