Erreur du compilateur CS0832
Mise à jour : novembre 2007
Message d'erreur
Une arborescence d'expression peut ne pas contenir d'opérateur d'assignation.
An expression tree may not contain an assignment operator.
Une arborescence d'expression ne conserve pas l'état de variable ou n'a aucun concept d'emplacement de stockage.
Pour corriger cette erreur
- Supprimez l'opérateur d'assignation de l'expression lambda ou de requête.
Exemple
Dans l'exemple de code, comme dans toutes les expressions lambda, x est juste un paramètre d'entrée qui est passé par valeur. Sa valeur ne peut pas être modifiée dans une arborescence d'expression. Elle peut être modifiée dans un lambda de délégué.
// 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;
}
}