CS1942 de erro do compilador
Mensagem de erro
O tipo da expressão na cláusula 'cláusula' está incorreto.Falha de inferência de tipos de tipos na telefonar para 'método'.
Este erro normalmente é gerado quando a variável de intervalo tem um tipo explícito incorreto.
Para corrigir este erro
- Se a variável de intervalo explicitamente for digitada, verifique se o tipo é um dos igual, ou implicitamente conversível do tipo de elementos na coleção ele itera.Se a variável de intervalo é precedida de var palavra-chave, remover var.
Exemplo
O código a seguir gera CS1942:
// cs1942.cs
class Program
{
static void Main(string[] args)
{
var x = from var i in Enumerable.Range(1, 100) // CS1949
select i; //CS1942
}
}
CS1942 está relacionado ao CS1949 porque o uso de var com um intervalo variável faz base Cast<T> operação falhe porque var não é um tipo.
Consulte também
Conceitos
Expressões de consulta LINQ (Guia de programação C#)