Entity Framework - Impossible de convertir l'expression lambda en type 'chaîne' car ce n'est pas un type délégué

.net c# entity-framework lambda

Question

J'utilise Entity Framework dans mon code basé sur C #. Je me heurte à une étrangeté inattendue et je cherche des suggestions.

Cas 1, 2, 3, 4 ... Projets:
RivWorks.dll
RivWorks.Service.dll
RivWorks.Alpha.dll

Échantillons (tous ces travaux):
RivWorks.Alpha.dll:

public static bool EndNegotitation(long ProductID)
{
    var product = (from a in _dbFeed.AutoWithImage 
                   where a.AutoID == ProductID select a).FirstOrDefault();
...
}

RivWorks.Service.dll

public static RivWorks.Model.NegotiationAutos.AutoWithImage 
    GetProductById(long productId)
{
    var myProduct = from a in _dbFeed.AutoWithImage 
                    where a.AutoID == productId select a;

    return myProduct.FirstOrDefault();
}
public static List<RivWorks.Model.NegotiationAutos.AutoWithImage> 
    GetProductByCompany(Guid companyId)
{
    var myProduct = from a in _dbFeed.AutoWithImage 
                    where a.CompanyID == companyId select a;

    return myProduct.ToList();
}

etc

Cas "bizarre":
RivWorks.Web.Service.dll (projet WCF)
Contient les mêmes références que les autres projets.

public NegotiateSetup GetSetup(string method, string jsonInput)
{
    ...
    long.TryParse(ProductID, out result);
    var product = (from a in _dbFeed.AutoWithImage 
                   where a.AutoID == result select a).FirstOrDefault();
    ...
}

Je reçois cette erreur de compilation (le mot "où" est mis en surbrillance dans mon éditeur):
Impossible de convertir l'expression lambda en type 'chaîne' car ce n'est pas un type délégué

Des idées ce qui causerait ceci?

Réponse acceptée

Pour ceux intéressés par le résultat:
Il me manquait une simple déclaration Using en tête de mon code.

using System.Linq;

Cela a réglé le problème.


Réponse populaire

Dans mon cas il manquait

using System.Data.Entity;



Related

Sous licence: CC-BY-SA with attribution
Non affilié à Stack Overflow
Sous licence: CC-BY-SA with attribution
Non affilié à Stack Overflow