1

我们已经Entity Framework v1在我们的应用程序中实现了多数据库支持(如Entity Framework 的多数据库支持中所述)。我们使用SQLSQL Compact databases。我们使用 SQL db 来创建 ou 模型,并且我们ssdl为 comapct db ( OurModel.SQLCE.ssdl ) 提供了单独的文件。

一切正常,直到我们决定使用预先生成的视图。如果我们使用 生成视图OurModel.ssdl,一切都适用于 SQL 数据库,但它不适用于 SQL CE 数据库。我们得到以下异常:

System.Data.EntityCommandCompilationException:准备命令定义时出错。有关详细信息,请参阅内部异常。---> System.Data.MappingException:EntityContainer 'OurModelEntities' 的映射和元数​​据信息不再匹配用于创建预生成视图的信息。

我们希望为 SQL 和 SQL CE 数据库turn-off使用预生成的视图,或者在我们的应用程序使用 SQl CE 数据库时使用预生成的视图。

所以,我的问题是:在实体框架中使用多个数据库时,有没有一种使用预生成视图的方法?

4

1 回答 1

1

我不确定这是否适用于您的问题。但是我收到了同样的错误消息,我意识到这是由于这个原因,我对其中一个模型类进行了更改,但没有为它添加迁移。

所以我所做的是,

在包管理器控制台中,我给出了以下命令

add-migration "Migration###"

然后运行update-database命令

这就是诀窍。

于 2014-08-12T18:44:37.743 回答