实体框架和不断变化的观点?

时间:2012-10-22 00:14:24

标签: c# entity-framework

我们有一位客户向我们提供了一些用VB6编写的代码,并将其转换为.Net 4.0。 Theirt数据库是一种只能被称为灾难的灾难。但是,我们不允许改变它。所以我们正在这个shakey数据库之上构建一个应用程序。

他们做的一件事是(等待它),根据用户选择在网格中显示哪些列来创建视图。

例如,“联系人”屏幕列出了所有联系人。它们有一个屏幕,用于读取数据库,从视图中获取字段,然后向用户显示可能列的列表。然后用户选择一些(姓氏,名字,DOB)。

然后代码继续使用

创建一个新视图(或覆盖现有视图)
  

来自AnotherView WHERE ID的SELECT Surname,Firstname,DOB':ID'

(AnotherView是一个包含联接等的大视图......)

然后每次查看屏幕时都会使用该视图。

因此,视图会发生变化。

我们正在使用Entity Framework。是否可以处理动态视图?我们在演示中使用Linq(我知道,我知道......)来挖掘数据。那么我们可以以某种方式使用Linq从视图中选择*,然后呈现网格吗?但是,如果视图正在改变,我们需要重新生成EF模型,不是吗?

1 个答案:

答案 0 :(得分:2)

简单回答:不要在这些查询中使用EF。 EF模型是在设计时创建的,并且在运行时更改它意味着很多问题,它不值得。使用EF直接执行动态SQL。