Ceci est une représentation exacte de la requête que vous avez dans SQL.
int [] productList = new int [] {1, 2, 3};
var myProducts = from p in db.Products
where productList.Contains(p.ProductID)
select p;
S'il s'agissait d'entités, pourriez-vous décrire le problème mieux?
La représentation exacte SQL serait ...
SELECT [t0].[ProductID], [t0].[Name], [t0].[ProductNumber], [t0].[MakeFlag], [t0].[FinishedGoodsFlag],
[t0].[Color], [t0].[SafetyStockLevel], [t0].[ReorderPoint], [t0].[StandardCost], [t0].[ListPrice],
[t0].[Size], [t0].[SizeUnitMeasureCode], [t0].[WeightUnitMeasureCode], [t0].[Weight], [t0].[DaysToManufacture],
[t0].[ProductLine], [t0].[Class], [t0].[Style], [t0].[ProductSubcategoryID], [t0].[ProductModelID],
[t0].[SellStartDate], [t0].[SellEndDate], [t0].[DiscontinuedDate], [t0].[rowguid], [t0].[ModifiedDate]
FROM [Production].[Product] AS [t0]
WHERE [t0].[ProductID] IN (@p0, @p1, @p2, @p3)
+1 pour la writting rapide –
Quand j'utilise cette méthode que je reçois l'erreur suivante: LINQ to Entities ne reconnaît pas la méthode « Boolean Contient [ Int32] (System.Collections.Generic.IEnumerable'1 [System.Int32], Int32) 'méthode, et cette méthode ne peut pas être traduite dans une expression de magasin –