可以说我有这样的方法:
IQueryable<MyFlatObject> GetMyFlatObjects()
{
using (var context = new MyEntities())
{
return context.MyEntities.Select(x => new MyFlatObject()
{
Property1 = x.PropertyA,
Property2 = x.PropertyB,
Property3 = x.PropertyC,
});
}
}
现在,如果我打电话:
MyService.GetMyFlatObjects().Where(x => x.Property1 == "test");
完整性检查。此过滤器不会传播到我的数据库存储区(就像我刚刚查询了我的实体一样),而是我将取回所有结果并使用 LINQ-to-objects 进行过滤。正确的?