Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/jpa/2.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
Asp.net core 如何在VS2017 final中针对多个框架?_Asp.net Core_Visual Studio 2017 - Fatal编程技术网

Asp.net core 如何在VS2017 final中针对多个框架?

Asp.net core 如何在VS2017 final中针对多个框架?,asp.net-core,visual-studio-2017,Asp.net Core,Visual Studio 2017,对于ASP.NET Core,我可以在一个项目中针对多个框架(例如netcoreapp1.1和dnx451) "frameworks": { "netcoreapp1.1": { "dependencies": { "Microsoft.NETCore.App": { "version": "1.1.0", "type": "platform" } }, "imports": [ "

对于ASP.NET Core,我可以在一个项目中针对多个框架(例如
netcoreapp1.1
dnx451

"frameworks": {
   "netcoreapp1.1": {
     "dependencies": {
       "Microsoft.NETCore.App": {
         "version": "1.1.0",
         "type": "platform"
       }
     },
     "imports": [
       "dotnet5.6",
       "portable-net45+win8"
     ]
   },
   "dnx451": {}
 },
在Visual Studio 2017的最终版本中,我只能以
netcoreapp1.1
dnx451
为目标,但我认为无法同时以两者为目标

我试图通过设置
netcoreapp1.1直接编辑csproj文件来添加第二个框架;dnx451
甚至
netcoreapp1.1;dnx451
但由于不支持的框架,在Visual Studio中出现错误


那么,在Visual Studio 2017最终版本的一个项目中,如何将
netcoreapp1.1
dnx451
作为目标呢?

您需要做一些更改。首先,
标记是多目标和
的正确标记是分隔符

DNX在RC2的开发过程中被弃用,所以支持DNX的最后一个版本是RC1。
dnxcore5x
(以及后来的
dotnet5.x
)名字对象被替换为
netstandard1.x
(对于类库)和
netcoreapp1.x
(对于应用程序)
dnx4xx
作为一个整体被弃用,应使用
net4xx

此外,当您以.NET Framework(单独或与.NET Core/NetStandard一起)为目标时,您需要定义一个运行时标识符:

win7-x86

win7-x64
或者你想要的默认值

更新 作为补充信息。当您针对多个平台时,您需要使用条件来解析包,即
Condition=“$(TargetFramework)”==”


1.0.1

否则可能会出现包还原错误

是否尝试添加第二个
TargetFramework
元素?因此
netcoreapp1.1net462
?dnx是一个不推荐使用的名字对象(RC2出现时已不推荐使用)iirc as RC1是支持DNX.RC2及以上版本的最后一个版本,它只支持使用新的dotnet工具运行。您应该使用
netxxx
instead发现这个问题以提供更多关于答案的详细信息:对于类库,正确的答案是
netstandard1.6;net462
?是的。但是EF核心工具的一个常见解决方法是将类库也设置为
netcoreapp1.x
,因为否则工具将找不到ASP.NET核心应用程序之外的DbContext(将DbContext放入类库的常见做法).Dunno如果这在新工具中得到了修复,但这是VS2015在project.json和用于VS的.NET核心工具中的一个限制,请参阅@Dismissile:到目前为止是的。但是大多数project.json设置都没有UIneither@Tseng是的,但我希望VS2017版本能解决这个问题:(