刷新 EF 设计器时出现异常

Exception when refreshing EF designer

新 Entity Framework.....

我目前使用的是 EF 和 Visual Studio 2012 的最新更新,当尝试从数据库刷新以更新我的模型中已更改的表时,设计人员抛出 COMException“文件或文件夹名称 'XXXXModel.Context.tt' 已经存在。请为我们正在添加的项目指定一个唯一的名称。

它似乎要我在从数据库刷新时删除所有模型文件,这不对。我错过了什么吗?

发生这种情况是因为 entity framework 在自动生成的 container.designer.cs 文件中创建了您的模型。此文件包含与您的数据库表对应的 类。

这次不删模型,只删.tt个文件

我也遇到过。 我责怪 Db 上下文生成器没有覆盖之前生成的 POCO 类。

如何克服它是按照 @husonos 的回答,其中:

  1. 删除项目中 .edmx 文件上的 *.tt 文件
  2. 添加新的 "Code generation Item"(通过右键单击 edmx 设计视图)
  3. select 数据库生成器 (<>.tt)
  4. 命名,保存

然后你应该一切顺利。

在某些情况下,可能会出现覆盖现有信息的消息,我确实同意了。