Visual studio 2015 在Visual Studio 2015中切换DNX版本?

Visual studio 2015 在Visual Studio 2015中切换DNX版本?,visual-studio-2015,asp.net-core,dnx,Visual Studio 2015,Asp.net Core,Dnx,我使用dnu和dnx启动了一个新的web项目。我可以在VisualStudio中打开它,一切都很好。现在我安装了Facebook SDK nuget包,但它与DNX Core 5.0不兼容。我有两套参考资料,一套用于DNX Core 5.0,另一套用于DNX 4.5.1。当我编译时会出现错误,因为找不到类型,尽管我可以在代码和intellisense中很好地输入它们 我找不到任何设置版本的地方。在global.json中,它说我的版本是'1.0.0-rc1-final',看起来像'clr'运行时

我使用dnu和dnx启动了一个新的web项目。我可以在VisualStudio中打开它,一切都很好。现在我安装了Facebook SDK nuget包,但它与DNX Core 5.0不兼容。我有两套参考资料,一套用于
DNX Core 5.0
,另一套用于
DNX 4.5.1
。当我编译时会出现错误,因为找不到类型,尽管我可以在代码和intellisense中很好地输入它们

我找不到任何设置版本的地方。在
global.json
中,它说我的版本是'1.0.0-rc1-final',看起来像'clr'运行时,而不是'coreclr'。这是否意味着它是4.5.1?这似乎与那些版本无关

在project.json中,我看到facebook仅用于框架“dnx451”,如果我将其添加到“dnxcore50”,则会出现一个错误,即facebook 7.0.6不支持DNXCore,版本=v5.0

"frameworks": {
  "dnx451": {
    "dependencies": {
      "Facebook": "7.0.6"
    }
  },
  "dnxcore50": {
    "dependencies": {
      "Facebook": "7.0.6"
    }
  }
},
对整个项目的搜索发现,这是这些字符串唯一存在的地方。从命令行执行递归grep显示路径中有许多行带有这些字符串(即
lib/dnxcore50/
)。父级似乎是
DNXCore,版本=v5.0

对DNX I find web配置执行完整搜索时有一个httpPlatform条目:

    <httpPlatform processPath="%DNX_PATH%"
         arguments="%DNX_ARGS%"
         stdoutLogEnabled="false"
         forwardWindowsAuthToken="false"
         startupTimeLimit="3600" />


我如何告诉我的项目使用framework
dnx451

如果继续引用dnxcore50作为可能的目标框架,Visual Studio将阻止您进行构建,除非所有引用的包都与之兼容。它试图确保您可以在这两个框架上运行应用程序

您只需从框架中删除dnxcore50即可删除依赖项,并确保始终为dnx451构建

"frameworks": {
  "dnx451": {
    "dependencies": {
      "Facebook": "7.0.6"
    }
  }
},

天哪,这么简单。。。我认为那个部分只是针对依赖于框架的依赖项…它确实非常简单。它结合了每个框架的依赖关系和您的目标框架(您可以有某些只需要一个框架的依赖关系)。很高兴为您提供帮助。值得注意的是,dnxcore50 target是一款超级灵活的全新自足、超便携和超冷的未来超赞功能,但目前它通常不值得在您的应用程序中支持。