Partager via


Erreur du compilateur CS1935

Mise à jour : novembre 2007

Message d'erreur

Impossible de détecter une implémentation du modèle de requête pour le type source 'type'. 'méthode' introuvable. Une référence à 'System.Core.dll' ou une directive using pour 'System.Linq' est-elle manquante ?
Could not find an implementation of the query pattern for source type 'type'. 'method' not found. Are you missing a reference to 'System.Core.dll' or a using directive for 'System.Linq'?

Le type de source dans une requête doit être IEnumerable, IEnumerable<T>, un type dérivé ou un type pour lequel vous ou quelqu'un d'autre a implémenté les opérateurs de requête standard. Si le type de source est IEnumerable ou IEnumerable<T>, vous devez ajouter une référence à system.core.dll et une directive using pour l'espace de noms System.Linq pour mettre les méthodes d'extension d'opérateur de requête standard dans la portée. Les implémentations personnalisées des opérateurs de requête standard doivent être mises dans la portée de la même façon, avec une directive using et, si nécessaire, une référence à l'assembly.

Pour corriger cette erreur

  • Ajoutez les directives using et les références au projet requises.

Exemple

Le code suivant génère CS1935 car la directive using pour System.Linq est mise en commentaire :

// cs1935.cs
// CS1935
using System;
using System.Collections.Generic;
// using System.Linq;


class Test
{
    static int Main()
    {
        int[] nums = {0,1,2,3,4,5};
        IEnumerable<int> e = from n in nums
                        where n > 3
                        select n;
        return 0;
    }
}

Voir aussi

Concepts

Vue d'ensemble des opérateurs de requête standard