CS1947 de erro do compilador
Mensagem de erro
Variável de intervalo 'nome da variável' não pode ser atribuído a--é somente leitura.
É uma variável de intervalo como uma variável de iteração em um foreach demonstrativo. Ele não pode ser atribuído a uma expressão de consulta.
Para corrigir este erro
Remova a atribuição para a variável de intervalo.
Se necessário, introduzir uma nova variável de intervalo usando o let cláusula e usá-lo para armazenar o valor.
Exemplo
O código a seguir gera 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();
}
}