Enable-Migrations为Exception调用“SetData”并显示“2”参数错误

时间:2018-01-29 00:56:37

标签: entity-framework entity-framework-6 visual-studio-2017

之前我曾多次使用Entity Framework迁移,但我无法在刚刚创建的新演示项目中启用迁移。我尝试了在SO帖子上推荐的不同选项,但似乎没有任何效果。以下是该项目的创建方式(主要遵循Julia Lerman的书籍示例):

  1. 创建了一个空白的Visual Studio解决方案
  2. 为Models,DataAccess(.NET标准)
  3. 添加了类库项目
  4. 在DataAccess项目中添加了DbContext
  5. 向解决方案添加了一个控制台应用程序项目
  6. 使用NuGet将EntityFramework 6安装到DataAccess和ConsoleApplication项目
  7. 项目运行正常,并在桌面上的SQLEXPRESS服务器中创建数据库。应用程序中的任何位置都没有连接字符串。 DataAccess项目中也没有app.config文件。唯一的app.config位于控制台应用程序项目中。

    我甚至在控制台应用程序的app.config中添加了一个连接字符串,并使用enable-migrations尝试了不同的选项。但似乎没有任何效果。

    使用Visual Studio 2017 15.5.4社区版

    Visual Studio screenshot

1 个答案:

答案 0 :(得分:1)

阅读this SO post表示可能某些项目类型可能与EF 6迁移不兼容。因此,而不是使用" .NET标准的类库项目类型"对于DataAccess项目,我尝试使用" .NET框架" DataAccess类库项目的项目类型(定义了DbContext)。迁移工作正常。