Errore del compilatore CS1932

Aggiornamento: novembre 2007

Messaggio di errore

Impossibile assegnare 'espressione' a una variabile di intervallo.
Cannot assign 'expression' to a range variable.

Il compilatore deve essere in grado di dedurre il tipo di una variabile di intervallo, sia se è introdotta in una clausola from sia in una clausola let. Non può essere null perché null non è un tipo e non può essere assegnato con un'espressione di un tipo unsafe.

Per correggere l'errore

  • Rimuovere l'assegnazione non valida.

  • Eseguire il cast in modo esplicito dell'espressione a un tipo consentito.

Esempio

Nel codice seguente viene generato l'errore CS1932 perché il tipo della variabile di intervallo non può essere derivato. Eseguire il cast del valore al tipo desiderato per correggere l'errore, come illustrato nell'esempio seguente.

// CS1932.cs
using System.Linq;
class Test
{
    static void Main()
    {
        
        var x = from i in Enumerable.Range(1, 100)
                let k = null // CS1932
                // Try the following line instead.
                let k = (string) null
                select i;
    }
}

Vedere anche

Concetti

Espressioni query LINQ (Guida per programmatori C#)