Entity framework core 选择核心netcoreapp1.0与netstandard1.6中的框架

Entity framework core 选择核心netcoreapp1.0与netstandard1.6中的框架,entity-framework-core,Entity Framework Core,我正在为我的应用程序创建一个DAL层。 当我在我的web应用程序中引用它时,它会按预期工作。 甚至Scaffold DbContext命令也可以正常工作并生成必要的上下文。我使用的是project.json: { "version": "1.0.0-*", "buildOptions": { "emitEntryPoint": false }, "dependencies": { "Microsoft.EntityFrame

我正在为我的应用程序创建一个DAL层。 当我在我的web应用程序中引用它时,它会按预期工作。 甚至Scaffold DbContext命令也可以正常工作并生成必要的上下文。我使用的是project.json:

 {
"version": "1.0.0-*",
      "buildOptions": {
        "emitEntryPoint": false
      },

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

        "Microsoft.NETCore.App": {
          "type": "platform",
          "version": "1.0.0"
        }  },
      "tools": {
        "Microsoft.EntityFrameworkCore.Tools": "1.0.0-preview2-final"
      },
      "frameworks": {
        "netcoreapp1.0": {
          "imports": [ "portable-net45+win8+wp8+wpa81", "portable-net45+win8+wp8", "dnxcore50" ]
        }
      }
    }
{
  "version": "1.0.0-*",
  "buildOptions": {
    "emitEntryPoint":false
  },

  "dependencies": {
    "NETStandard.Library": "1.6.0",
    "Microsoft.EntityFrameworkCore.SqlServer": "1.0.1",
    "Microsoft.EntityFrameworkCore.SqlServer.Design": "1.0.1"
  },
  "tools": {
    "Microsoft.EntityFrameworkCore.Tools": "1.0.0-preview2-final"
  },
  "frameworks": {
    "netstandard1.6": {
      "imports": [ "portable-net45+win8+wp8+wpa81", "portable-net45+win8+wp8", "dnxcore50" ]
    }
  }
}
当我尝试将框架更改为“netstandard1.6”时,我无法从Package manager控制台运行Scaffold DbContext命令,下面是更改后的project.json:

 {
"version": "1.0.0-*",
      "buildOptions": {
        "emitEntryPoint": false
      },

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

        "Microsoft.NETCore.App": {
          "type": "platform",
          "version": "1.0.0"
        }  },
      "tools": {
        "Microsoft.EntityFrameworkCore.Tools": "1.0.0-preview2-final"
      },
      "frameworks": {
        "netcoreapp1.0": {
          "imports": [ "portable-net45+win8+wp8+wpa81", "portable-net45+win8+wp8", "dnxcore50" ]
        }
      }
    }
{
  "version": "1.0.0-*",
  "buildOptions": {
    "emitEntryPoint":false
  },

  "dependencies": {
    "NETStandard.Library": "1.6.0",
    "Microsoft.EntityFrameworkCore.SqlServer": "1.0.1",
    "Microsoft.EntityFrameworkCore.SqlServer.Design": "1.0.1"
  },
  "tools": {
    "Microsoft.EntityFrameworkCore.Tools": "1.0.0-preview2-final"
  },
  "frameworks": {
    "netstandard1.6": {
      "imports": [ "portable-net45+win8+wp8+wpa81", "portable-net45+win8+wp8", "dnxcore50" ]
    }
  }
}
我的问题是,DAL dll的框架是netcoreapp1.0还是netstandard1.6有关系吗?如果是这样的话,那么在以netstandard1.6为框架的proj上运行Scaffold DbContext命令的解决方案是什么呢?不,归根结底,这并不重要。然而,EF工具仍处于预发布阶段,存在许多粗糙边缘。你们看到了这个问题。将主应用程序作为
-StartupProject
传递应该可以解决这个问题