Notes
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
La variable de portée 'nom de variable' ne peut pas être assignée à -- elle est en lecture seule
Une variable de portée est semblable à une variable d’itération d’une instruction foreach
. Elle ne peut pas être assignée dans une expression de requête.
Pour corriger cette erreur
Supprimez l’assignation à la variable de portée.
Si nécessaire, ajoutez une nouvelle variable de portée à l’aide de la clause
let
, puis utilisez-la pour stocker la valeur.
Exemple
Le code suivant génère l’erreur CS1947 :
// cs1947.cs
using System.Linq;
class Test
{
static void Main()
{
int[] array = new int[] { 1, 2, 3, 4, 5 };
var x = from i in array
let k = i
select i = 5; // CS1947
x.ToList();
}
}