ich auf Modifizieren this Beispiel gerade arbeite:Arbeiten mit dem Objecteinzel Enumeration Herausforderung in Linq-To-Entities Entity SQL
Using advWorksContext As New AdventureWorksEntities
' Call the constructor that takes a command string and ObjectContext.
Dim productQuery1 As New ObjectQuery(Of Product)("Product", advWorksContext)
Dim result As Product
For Each result In productQuery1
Console.WriteLine("Product Name: {0}", result.Name)
Next
End Using
Ein Object kann nur einmal enumberated werden. (Nachfolgende Enumerationsversuche lösen eine Ausnahme aus.) Die Enumeration findet in jeder Anweisung statt. Das Problem ist, dass wenn die Abfrage leer ist, versucht ein For Each eine Ausnahme auszulösen. Aber wenn ich nach einer Zählung überprüfe:
If productQuery1.Count > 0 Then . . .
Das frisst meine eine Chance auf Aufzählung. Ich könnte die For Each in einem try/catch-Block verschachteln und die leeren Abfrageausnahmen wegwerfen, aber das ist hässlich. Gibt es eine bessere Lösung?
Sie haben Recht. Ich war mir sicher, dass ich das schon versucht hatte, also habe ich es nicht versucht. . . So viel zu meiner Erinnerung! Vielen Dank – Jeff