【发布时间】:2012-12-18 14:57:08
【问题描述】:
我有多个视图,它们的记录结构完全相同,但过滤逻辑不同。我希望能够使用 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 的集合。
【问题讨论】:
-
你的意思是使用同一组数据吗?还是只保留数据模型,而不考虑数据?
-
我的意思是为多个数据集提供单个记录实体类。所以查询表/视图 a 和表/视图 b(具有完全相同的字段定义)的结果将属于同一类型。
-
如果您使用代码优先,您可以创建多个上下文类,将类型映射到每个不同的视图。这是我在 EF 中看到的唯一选择。我必须承认我从未尝试过,所以如果你这样做,我不确定 EF 是否有一些“惊喜”。
-
你在使用EF继承吗?
标签: .net entity-framework