Asp.net core EF 7.NET核心工具错误

Asp.net core EF 7.NET核心工具错误,asp.net-core,entity-framework-core,.net-core,Asp.net Core,Entity Framework Core,.net Core,我用dotnet new-t lib命令创建了一个新的.NET核心项目。它是我的EF上下文的类库。这是我的project.json: { "version": "1.0.0-*", "buildOptions": { "debugType": "portable" }, "dependencies": {}, "frameworks": { "netstandard1.6": { "dependencies": { "NET

我用
dotnet new-t lib
命令创建了一个新的.NET核心项目。它是我的EF上下文的类库。这是我的
project.json

    {
  "version": "1.0.0-*",
  "buildOptions": {
    "debugType": "portable"
  },
  "dependencies": {},
  "frameworks": {
    "netstandard1.6": {
      "dependencies": {
        "NETStandard.Library": "1.6.0",
        "Microsoft.EntityFrameworkCore.SqlServer": "1.0.0",
        "Microsoft.EntityFrameworkCore.Tools": "1.0.0-preview2-final"
      }
    }
  }
}
运行
dotnet restore
命令时,出现以下错误:

error: Package Microsoft.EntityFrameworkCore.Tools 1.0.0-preview2-final is not compatible with netstandard1.6 (.NETStandard,Version=v1.6). Package Microsoft.EntityFrameworkCore.Tools 1.0.0-preview2-final supports:
如何在netstandard1.6中首先使用EF代码

根据,应在project.json中的工具部分注册
“Microsoft.EntityFrameworkCore.Tools”:“1.0.0-preview2-final”

{
"version": "1.0.0-*",
"description": "Class Library",
"frameworks": {
  "netstandard1.6": {
   "imports": [
     "dnxcore50"
   ]
 }
},

 "dependencies": {
 "NETStandard.Library": "1.6.0",
 "Microsoft.EntityFrameworkCore": "1.0.0",
 "Microsoft.EntityFrameworkCore.SqlServer": "1.0.0"
},
"tools": {
  "Microsoft.EntityFrameworkCore.Tools": "1.0.0-preview2-final"
 }
}
使用它也是一个好主意,因为EF核心的一些依赖项仍然不支持.NETStandard,但在您的例子中,我检查了它,它甚至可以在没有导入的情况下工作


关于Johan B的评论,该评论指出ef工具目前不能与类库一起使用,它部分通过使用
--startup project
解决方案来解决,例如:
dotnet ef--startup project../ProjectThatCanRunCommand/migrations add InitDb
,更多信息:

请注意,使用Enity Framework工具不支持类库,但这样做将失败。请参阅以了解解决方法。@JohanB部分解决方法是使用
--startup project
解决方法,例如:
dotnet ef--startup project../ProjectThatCanRunCommand/migrations add InitDb
,请看一下:@HamidMosalla这是我一直在寻找的解决方案。你能用这个评论更新你的答案吗?这样我就可以把它标记为正确答案了?