Der ByRef-Parameter <Parametername> kann in einem Abfrageausdruck nicht verwendet werden

Aktualisiert: November 2007

'ByRef' parameter <parametername> cannot be used in a query expression

Ein in eine LINQ-Abfrage eingeschlossener Parameter ist ein Zeigertyp. In Abfrageausdrücken verwendete Parameter können nicht durch einen Verweis übergeben werden.

Fehler-ID: BC36533

So beheben Sie diesen Fehler

  • Deklarieren Sie eine neue Variable, und weisen Sie den Wert der neuen Variablen einer Kopie des als Verweis übergebenen Werts zu. Verwenden Sie die kopierte Variable in der LINQ-Abfrage. Im Folgenden finden Sie ein Beispiel:

    Sub RunQuery(ByVal collection As List(Of Integer), _
                 ByRef filterValue As Integer)
        Dim fv = filterValue
        Dim queryResult = From num In collection _
                          Where num < fv
    End Sub
    

So beheben Sie diesen Fehler

  • Ersetzen Sie das ByRef-Schlüsselwort durch das ByVal-Schlüsselwort für den in der Abfrage verwendeten Parameter.

Siehe auch

Konzepte

Unterschiede zwischen dem Übergeben von Argumenten als Wert und als Verweis

Einführung in LINQ in Visual Basic

Weitere Ressourcen

LINQ in Visual Basic