LINQ: LINQ to Entities does not recognize the method 'System.String ToString()'.
-
Okay, ich begebe mich nun ebenfalls in die Abgründe von LINQ, was ich leider mit Visual Basic.NET tun muss. Ich habe bis heute nie damit gearbeitet, und stosse nun auf einige Probleme. Gegeben ist Folgende Abfrage auf ein ADO.NET Entity Data Model:
If (Aggregate Any In MyCRM Where Any.Nummer = Yield.ADR_Nr.ToString() Into Count()) > 0 Then Console.WriteLine(Adresse.ToString()) End IfDabei erhalte ich dann folgende
System.NotSupportedException:"LINQ to Entities does not recognize the method 'System.String ToString()' method, and this method cannot be translated into a store expression."Wie soll ich denn die
Where-Klausel implementieren, wennAny.NummereinSystem.Stringist undYield.ADR_NreinSystem.Int32und ich nicht konvertieren darf? Ich denke, die Frage ist allgemein auf .NET und weniger auf Visual Basic.NET bezogen und stelle sie darum einfach mal hier rein.Besten Dank für alle Vorschlage

MfG
-
Helfen dir die zwei folgenden Links?
http://blog.dreamlabsolutions.com/post/2008/11/17/LINQ-Method-cannot-be-translated-into-a-store-expression.aspx
http://social.msdn.microsoft.com/Forums/en-AU/adodotnetentityframework/thread/19a33909-c532-419b-a533-57e431c0b30bGrüssli
-
Omg! Danke, ich darf also keine meiner schönen Methoden aufrufen?

Also, die Lösung ist wie folgt:
If (Aggregate Any In MyCRM Where Any.Nummer = CStr(Yield.ADR_Nr) Into Count()) > 0 Then Console.WriteLine(Adresse.ToString()) End IfNa, das kann ja noch heiter werden mit diesem LINQ. Ich hab denen gesagt, dass ich alles hardcore-mässig mit einem reinen SQL-Skript machen will, aber es muss ja VB.NET sein lol
Danke Dravere

-
Tipp:
Ich habe die Fehlermeldung 1:1 ins Suchfeld einer Suchmaschine gegeben und dabei kamen auf der ersten Seite diese zwei Links heraus
Ich habe keine Ahnung worum es geht

Grüssli
-
Hahaha. Das habe ich zuerst auch gemacht, aber ich wollte nicht wahrhaben, dass es tatsächlich so ist. Ich habe gemeint, dass ich irgend etwas übersehen habe.
In der Realität ist es aber so, dass ich in LINQ wirklich nur ein paar Funktionen gebrauchen kann, da das Zeugs serverseitig ausgewertet werden muss

Wofür habe ich dann dieses tolle Visual Basic.NET Programm? (Achtung: Rhetorische Frage)
MfG
-
VB.NET? Mit dieser Krankheit arbeitest du? Also echt

PS. Es ist einfacher wenn du die Statements auslagerst und anders formatiert darstellst.
Der Name der Methode sagt dann aus was du mit dem Statement erreichen wolltest, hast so verständlicheren Code