我有多个视图,它们的记录结构完全相同,但过滤逻辑不同。我希望能够使用Entity Framework查询它们中的任何一个,如果它们将为每个视图返回相同类型的值而不是使用不同类型(具有完全相同的成员),则看起来会更加自然。如何实现呢?

我将可视化模型设计器与数据库优先方法结合使用。

更新:

例如:我们可以有Vehicles表,

create view [GreenVehicles] as select * from [Vehicles] where [Color]='Green';


create view [GreenVans] as select * from [GreenVehicles] where [Type]='Van';

我们的任务是做到这一点,以便我们能够查询GreenVans作为GreenVehicles的集合。

最佳答案

[UPDATE / 3]

我将原来的示例全部删除了,因为澄清起来与之无关。您正在寻找的是返回IQueryable对象,并在对其执行之前添加过滤器。 (据我所知)这将导致所有工作仍在服务器端完成,可以在此处找到对其的良好讨论:

http://codethinked.com/keep-your-iqueryable-in-check

欢迎更正!

08-26 14:34