Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/entity-framework/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 实体框架迁移的空引用_C#_Entity Framework_Migration - Fatal编程技术网

C# 实体框架迁移的空引用

C# 实体框架迁移的空引用,c#,entity-framework,migration,C#,Entity Framework,Migration,当我使用Entity Framework Migration的Add Migration命令时,出现以下异常: System.NullReferenceException:对象引用未设置为对象的实例。 位于System.Data.Entity.Migrations.Extensions.ProjectExtensions.GetFileName(项目项目,字符串projectItemName) 位于System.Data.Entity.Migrations.MigrationsCommands.

当我使用Entity Framework Migration的Add Migration命令时,出现以下异常:

System.NullReferenceException:对象引用未设置为对象的实例。
位于System.Data.Entity.Migrations.Extensions.ProjectExtensions.GetFileName(项目项目,字符串projectItemName)
位于System.Data.Entity.Migrations.MigrationsCommands..ctor(对象项目、对象startUpProject、字符串配置类型名称、字符串连接字符串名称、字符串连接字符串、字符串连接ProviderName、PSCmdlet cmdlet)


有什么见解吗?

当解决方案中有多个项目并且选择了“错误”项目作为启动项目时,我以前见过这种情况。例如,有人报告说,在Azure托管的MVC3网站中,他们将Azure项目作为启动项目,而不是MVC项目。在启动时切换到MVC项目解决了这个问题


更新:这已在EF5-beta2中修复,该版本现已在NuGet上提供。

调用任何EF命令时,您实际上可以非常轻松地在Package Manager控制台中指定目标项目,例如,只需使用正确的标志和参数,给定一个名为ProjectFoo的项目,该项目来自一个包含多个项目的解决方案:

  • 启用迁移-projectname projectfoo
  • 添加迁移“初始”-projectname projectfoo
  • 更新数据库-projectname projectfoo
    等等

非常简单。

完整的命令行是什么?你把它指向一个现有的文件了吗?文件真的在那里吗?你能发布更多的细节吗?您是否已经为您的项目(初始文件)激活了迁移?您做了哪些更改?该命令类似于“AddMigration05”。移民工作进展顺利。我把项目移到了TFS,现在它不再工作了。我正在使用EF 4.3I确认Arthurs解决方案。另外,在PackageManager控制台中选择正确的项目。谢谢。。。将startup项目设置为mvc而不是azure对我来说很有效。当我打开了2个不同项目的VS2012时,我就遇到了这种情况。关闭另一个解决了问题。谢谢