【问题标题】:Entity Framework DB first approach for .NET Core Class Library Project "Microsoft.EntityFrameworkCore.Tools".NET Core 类库项目“Microsoft.EntityFrameworkCore.Tools”的 Entity Framework DB 第一种方法
【发布时间】:2016-10-12 19:43:19
【问题描述】:

我正在使用 Visual Studio 2015 并尝试安装依赖项来搭建我的数据库类。这是 Project.json:

{
  "version": "1.0.0-*",

  "dependencies": {
    "Microsoft.EntityFrameworkCore.SqlServer": "1.0.1",
    "Microsoft.EntityFrameworkCore.SqlServer.Design": "1.0.1",
    "Microsoft.EntityFrameworkCore.Tools": "1.0.0-preview2-final",
    "NETStandard.Library": "1.6.0"
  },

  "frameworks": {
    "netstandard1.6": {
      "imports": "dnxcore50"
    }
  },

  "tools": {
    "Microsoft.EntityFrameworkCore.Tools": {
      "version": "1.0.0-preview2-final",
      "imports": "net451"
    }
  }
}

但是,Microsoft.EntityFrameworkCore.Tools": "1.0.0-preview2-final 没有安装,说明这个错误:

如何解决这个问题?

【问题讨论】:

    标签: c# .net entity-framework .net-core


    【解决方案1】:

    由于 EF 尚不兼容 .NET Standard,我们必须使类库与 .NET Core 兼容。添加必要的依赖项,然后将库修改为启动。

    "dependencies": {
        "Microsoft.NETCore.App": {
          "version": "1.0.0",
          "type": "platform"
        }
    

    打开包管理器控制台,然后安装以下包:

    • 运行安装包 Microsoft.EntityFrameworkCore.SqlServer
    • 运行安装包 Microsoft.EntityFrameworkCore.Tools –Pre
    • 运行安装包 Microsoft.EntityFrameworkCore.SqlServer.Design

    在 project.json 中添加必要的工具

    tools": {
        "Microsoft.EntityFrameworkCore.Tools": "1.0.0-preview2-final"
    }
    

    project.json 应该是这样的:

    {
      "buildOptions": {
        "emitEntryPoint": true
      },
      "frameworks": {
        "netcoreapp1.0": {}
      },
      "dependencies": {
        "Microsoft.NETCore.App": {
          "version": "1.0.0",
          "type": "platform"
        },
        "Microsoft.EntityFrameworkCore.Tools": {
          "version": "1.0.0-preview2-final",
          "type": "build"
        },
        "Microsoft.EntityFrameworkCore.SqlServer.Design": "1.0.1",
        "Microsoft.EntityFrameworkCore.SqlServer": "1.0.1"
      },
      "tools": {
        "Microsoft.EntityFrameworkCore.Tools": {
          "version": "1.0.0-preview2-final"
        }
      }
    }
    

    现在,创建一个名为“Models”的文件夹,您生成的类将驻留在那里。

    现在,运行以下命令来搭建数据库:

      Scaffold-DbContext "Server=YourServer;Database=YourDB;User Id=sa;Password=yourPassword;"
     Microsoft.EntityFrameworkCore.SqlServer -OutputDir Models 
    

    【讨论】:

      猜你喜欢
      • 2017-01-09
      • 1970-01-01
      • 2018-02-06
      • 2020-01-27
      • 1970-01-01
      • 2021-11-05
      • 2021-01-07
      • 1970-01-01
      • 2017-09-15
      相关资源
      最近更新 更多