任何单元测试包括从我的 DBContext 调用 SELECT(使用 LINQ)数据都会引发以下错误:
自创建数据库以来,支持“MyDBContext”上下文的模型已更改。手动删除/更新数据库,或使用 IDatabaseInitializer 实例调用 Database.SetInitializer。例如,DropCreateDatabaseIfModelChanges 策略将自动删除并重新创建数据库,并可选择使用新数据为其播种。
搜索该特定错误使我相信我需要在 Global.asax Application_Start 方法中包含以下行:
System.Data.Entity.Database.SetInitializer<MyDBContext>( null );
这是为了在运行应用程序本身时修复类似的错误。不幸的是,当我运行我的应用程序时,我没有收到此错误,而且我的单元测试项目似乎没有 Application_Start 方法。有什么方法可以对我使用自定义数据库后端的单元测试项目并忽略其中发生的任何更改?
我在我的主要项目上工作了一段时间后添加了单元测试项目,所以我可能以某种方式把它搞砸了,但我无法弄清楚我的生活该怎么做。我正在使用 Visual Studio 2010 中的内置单元测试。