Error del compilador CS1932

Actualización: noviembre 2007

Mensaje de error

No se puede asignar 'expresión' a una variable de rango.
Cannot assign 'expression' to a range variable.

El compilador debe poder inferir el tipo de una variable de rango, independientemente de que aparezca en una cláusula from o una cláusula let. No puede ser null, porque null no es un tipo, y no se puede asignar con una expresión de tipo no seguro.

Para corregir este error

  • Quite la asignación que no sea válida.

  • Convierta explícitamente la expresión a un tipo permitido

Ejemplo

El código siguiente genera el error CS1932 porque no se puede inferir el tipo de la variable de rango. Convierta el valor al tipo necesario para corregir el error, como se muestra en el ejemplo siguiente.

// 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;
    }
}

Vea también

Conceptos

Expresiones de consultas con LINQ (Guía de programación de C#)