2009-11-30 5 views
2

Si je crée une méthode d'extension pour mes objets d'entité et que j'essaie de l'utiliser dans une expression LINQ, j'obtiens une erreur. Est-ce une limitation et quelque chose que je ne peux pas faire ou est-ce que je manque quelque chose?Méthodes d'extension dans Linq aux entités-expressions

Freddy concerne

Répondre

2

Le problème est que le fournisseur LINQ à entités tentera de convertir votre méthode d'extension à une instruction SQL. LINQ-to-Entities exige effectivement que toute expression de requête LINQ soit traduisible en SQL (notez que LINQ-to-SQL n'a pas cette limitation, LINQ-to-Entities trace une ligne ferme entre l'espace client et l'espace serveur alors que LINQ-to -SQL est plus lâche). Selon votre méthode d'extension, cela ne peut probablement pas être fait. C'est-à-dire, s'il y a des invocations de méthode etc. qui ne peuvent pas être traduites en SQL pour fonctionner comme une requête côté serveur, oubliez-le.

+0

Merci pour la réponse. Pas ce que j'espérais mais je vais devoir le résoudre quand même. – Freddy