Um die anderen Antworten hier zu ergänzen, können Sie Folgendes tun, wenn Sie ein neues Objekt eines dritten anderen Typs mit einer where-Klausel (z. B. einer, die nicht Ihr Entity Framework-Objekt ist) erstellen möchten:
public IEnumerable<ThirdNonEntityClass> demoMethod(IEnumerable<int> property1Values)
{
using(var entityFrameworkObjectContext = new EntityFrameworkObjectContext )
{
var result = entityFrameworkObjectContext.SomeClass
.Join(entityFrameworkObjectContext.SomeOtherClass,
sc => sc.property1,
soc => soc.property2,
(sc, soc) => new {sc, soc})
.Where(s => propertyValues.Any(pvals => pvals == es.sc.property1)
.Select(s => new ThirdNonEntityClass
{
dataValue1 = s.sc.dataValueA,
dataValue2 = s.soc.dataValueB
})
.ToList();
}
return result;
}
Achten Sie besonders auf das Zwischenobjekt, das in den Klauseln Where und Select erstellt wird.
Beachten Sie, dass wir hier auch nach verbundenen Objekten suchen, deren Eigenschaft1 mit einer der Objekte in der Eingabeliste übereinstimmt.
Ich weiß, dass dies etwas komplexer ist als das, wonach der ursprüngliche Fragesteller gesucht hat, aber hoffentlich hilft es jemandem.