为什么抛出AutomaticMigrationsDisabledException?

时间:2015-05-20 16:14:48

标签: entity-framework entity-framework-6 ef-migrations

我们有

  • 旧网站项目
  • 新的Web项目
  • 包含所有实体框架代码的类库

所有三个项目都参考了Entity Framework 6.1.3。

类库由Old Web Project和New Web Project共享。两个Web项目都有一个对类库的文件引用。它们都指向磁盘上的相同位置。

两个Web项目都配置为使用相同的数据库。

当我在Visual Studio中运行Old Web Project时,它运行得很好。

当我尝试在Visual Studio中运行New Web Project时,它会抛出AutomaticMigrationsDisabledException。

当我暂时将ClassLibrary.csproj添加到New Web Project的解决方案并运行

  

添加迁移TestMigration -ConfigurationTypeName MyConfiguration -ProjectName ClassLibrary -StartupProjectName NewWebProject -ConnectionStringName MyContext

它使用空的Up()和Down()方法进行迁移,表明它毕竟没有找到更改。

在这些情况下,可能导致New Web Project抛出AutomaticMigrationsDisabledException的原因是什么?如何进一步诊断问题?

1 个答案:

答案 0 :(得分:1)

我仔细检查过New Web Project对ClassLibrary.dll的文件引用是否正确,并且有问题的DLL是最新的。

作为测试,我在ClassLibrary.dll中为类添加了一个新方法,发现New Web Project无法解析它。

我删除了现有的文件引用并重新添加,问题解决了。

由于未知原因,正在引用ClassLibrary.dll的较旧副本,与此参考的“属性”窗口中显示的信息形成对比。