再根据工具书学习MVC的时候发生了报错,报错信息如下
PM> Enable-Migrations –ContextTypeName MvcMovie.Models.MovieDBContext
Checking if the context targets an existing database...
System.TypeInitializationException: “System.Data.Entity.Migrations.DbMigrationsConfiguration`1”的类型初始值设定项引发异常。 ---> System.TypeInitializationException: “System.Data.Entity.Internal.AppConfig”的类型初始值设定项引发异常。 ---> System.Configuration.ConfigurationErrorsException: 创建 entityFramework 的配置节处理程序时出错: Could not load file or assembly 'EntityFramework, Version=5.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040) (G:\测试项目\MvcMovie\MvcMovie\tmp7AF3.tmp line 8) ---> System.IO.FileLoadException: Could not load file or assembly 'EntityFramework, Version=5.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040)
在晚上查找了些关于System.TypeInitializationException的报错的解决办法也无法解决,后来发现我装的EntityFramework.dll版本是6.0.0.0的,而自动生成的web.config里的EntityFramework, Version=5.0.0.0指向的是5.0.0.0的。
解决办法:EntityFramework, Version=5.0.0.0改为EntityFramework, Version=6.0.0.0,重新运行,通过。