Sep 18

Der Lambda-Ausdruck kann nicht in “String” konvertiert werden…

Tag: Tipps und TricksTorsten @ 15:47

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.

Ein Kommentar zu “Der Lambda-Ausdruck kann nicht in “String” konvertiert werden…”

  1. Alex says:

    super, danke, war echt ne Hilfe. was zum Geier sollte diese Meldung habe ich mich gefrag.

Dein Kommentar