Sdílet prostřednictvím


Compilerfehler CS0832

Aktualisiert: November 2007

Fehlermeldung

Eine Ausdrucksbaumstruktur darf keinen Zuweisungsoperator enthalten.
An expression tree may not contain an assignment operator.

Ausdrucksbaumstrukturen behalten den Variablenstatus nicht bei und kennen keine Speicherorte.

So beheben Sie diesen Fehler

  • Entfernen Sie den Zuweisungsoperator aus dem Lambda- bzw. Abfrageausdruck.

Beispiel

Im folgenden Beispielcode ist x wie in allen Lambda-Ausdrücken lediglich ein Eingabeparameter, der als Wert übergeben wird. Sein Wert kann in einer Ausdrucksbaumstruktur nicht geändert werden. In einem Delegatlambda ist eine Änderung des Werts möglich.

// cs0843.cs
using System;
using System.Linq;
using System.Linq.Expressions;

public class C
{
    public static int Main()
    {
        Expression<Func<int, int>> e = x => x += 5; // CS0843
        return 1;
    }
}