Visual studio 2015 在Visual Studio 2015中切换DNX版本?
我使用dnu和dnx启动了一个新的web项目。我可以在VisualStudio中打开它,一切都很好。现在我安装了Facebook SDK nuget包,但它与DNX Core 5.0不兼容。我有两套参考资料,一套用于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'运行时
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是一款超级灵活的全新自足、超便携和超冷的未来超赞功能,但目前它通常不值得在您的应用程序中支持。