Sep 18
Der Lambda-Ausdruck kann nicht in „String“ konvertiert werden…
Manchmal gibt es wirklich tolle irreführende Fehlermeldungen 😉
Using entities As New Entities_MyModel() Dim userQuery = entities.Users.Where(Function(f) f.ID = 1) Dim myUser = userQuery.First()
Führt zu: Der Lambda-Ausdruck kann nicht in „String“ konvertiert werden, da „String“ kein Delegattyp ist. bzw. Lambda expression cannot be converted to ‚String‘ because ‚String‘ is not a delegate type.
Die gleiche Abfrage in etwas anderer Schreibweise ergibt eine sinnvollere Fehlermeldung:
Using entities As New Entities_MyModel() Dim userQuery = From user In entities.Users _ Where user.ID = 1 _ Select user If userQuery.Count > 0 Then Dim myUser = userQuery.First()
Führt zu: Ein Ausdruck vom Typ „System.Data.Objects.ObjectQuery(Of Data.Interface.MyModel.Users)“ kann nicht abgefragt werden. Stellen Sie sicher, dass kein Assemblyverweis und/oder Namespaceimport für den LINQ-Anbieter fehlt.
Warum nicht gleich so 😉 Es fehlt in dem Beispiel einfach nur der Verweis auf System.Core im Projekt, sowie Imports System.Linq zu Beginn der Klasse.