如何解决LINQ to Entities不支持该方法…System.Object CompareObjectEqual
|| 当我执行以下代码时,我收到错误消息: LINQ to Entities无法识别方法\'System.Object CompareObjectEqual(System.Object,System.Object,Boolean)\',并且该方法无法转换为商店表达式。 它似乎发生在PCstudent的For Each row2行中。 Protected Sub btnPushSemester_Click(sender As Object,e As EventArgs) Handles btnPushSemester.Click
Dim dbPC As New Campus6Entities
Dim dbContext As New pbu_housingEntities
Dim getoccupants
Dim thisYear As String
Dim thisTerm As String
Using dbContext
Dim get_Year = From p In dbContext.Configs _
Where p.Description = \"year\" _
Select p
Dim get_Term = From p In dbContext.Configs _
Where p.Description = \"term\" _
Select p
thisYear = get_Year.First.textValue
thisTerm = get_Term.First.textValue
getoccupants = From p In dbContext.Residents _
Where p.semester = thisTerm _
Where p.year = thisYear _
Select p
Using dbPC
For Each row In getoccupants
Dim student_info = row
Dim people_id = student_info.people_code_id
Dim building_code = student_info.Building1.building_code
Dim room = student_info.Room1.room1
Dim PCstudent = From r In dbPC.RESIDENCies _
Where r.PEOPLE_ID = people_id _
Where r.ACADEMIC_YEAR = thisYear _
Where r.ACADEMIC_TERM = thisTerm _
Select r
For Each row2 In PCstudent
Dim student_info2 = row2
student_info2.DORM_BUILDING = building_code
student_info2.DORM_ROOM = room
student_info2.RESIDENT_COMMUTER = \"R\"
student_info2.DORM_CAmpuS = \"O000000001\"
dbPC.SaveChanges()
Next
Next
End Using
End Using
End Sub
解决方法
首先,您正在以最困难的方式来做事情(在代码中逐行更新),而不是一次更新数据库;那就是说,表面上看起来没有什么不对。您可能会检查\'dbPC.Residencies \'的定义以确保正确定义了它,并且可能需要在\“ For Each \”之前加上\“ if(PCStudent.Any())\”复选框。 ”,尽管它应该按书面规定工作。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。