Problem: I got this error when trying to retrieve list items using CAML SPQuery.
Root Cause: There was a field “Artifact ID” in the list, but the internal name was “Artifact”, so it resulted in an error! Correcting the internal name in the Query XML fixed the problem.
In another case, got this error:
“The following exception was thrown when trying to enumerate the collection: “One or more field types are not installed properly. Go to the list settings page to delete these fields.”
This is because: XML is case sensitive, Field name was entered as “NotificationTo ” instead of “NotificationTo” (Note the extra space!)
So the catch is: Always use the Internal Name of the field and bear in mind, it’s case-sensitive (E.g. NotificationTo and notificationto are not the same!)