Asp.net core 我应该如何定义“我的”呢;“依赖性”;及;“框架组件”;在project.json中,当目标为“时”;dotnet“;
基于,基本上我理解的是,假设依赖项库与框架一起预装,我应该使用Asp.net core 我应该如何定义“我的”呢;“依赖性”;及;“框架组件”;在project.json中,当目标为“时”;dotnet“;,asp.net-core,dnx,Asp.net Core,Dnx,基于,基本上我理解的是,假设依赖项库与框架一起预装,我应该使用frameworkAssemblies,但如果不是,那么需要由包管理器源代码将其拉下来,并且您应该使用依赖项 我的问题是,如果我的目标是dotnet,基本上就是,我应该如何定义对System.Threading.Tasks的引用 如果我放一个 "frameworks": { "dotnet": { "dependencies": { "System.Threading.Tasks": "4.0.10
frameworkAssemblies
,但如果不是,那么需要由包管理器源代码将其拉下来,并且您应该使用依赖项
我的问题是,如果我的目标是dotnet
,基本上就是,我应该如何定义对System.Threading.Tasks
的引用
如果我放一个
"frameworks": {
"dotnet": {
"dependencies": {
"System.Threading.Tasks": "4.0.10"
}
}
}
这是否意味着在运行完整的.NET framework时,它将使用捆绑的库而不是GAC提供的库
如果我使用
"frameworks": {
"dotnet": {
"frameworkAssemblies": {
"System.Threading.Tasks": "4.0.10"
}
}
}
这是否意味着如果我发布我的网站,它将不包括System.Threading.Tasks包
更新:我觉得我在这里弄糊涂了。当我试着
"dependencies": {
"EntityFramework.SqlServer": "7.0.0-beta7"
},
"frameworks": {
"dotnet": { }
}
我希望它能编译。目标框架将被限制为“EntityFramework.SqlServer”(net45,dnxcore50)的任何目标。但是,这不起作用,我得到一个
依赖项EntityFramework.SqlServer 7.0.0-beta7在project xxx中不支持framework.NETPlatform,Version=v5.0
错误。看起来使用dotnet
只是针对BCL的一个绰号。根据我通过尝试不同的project.json组合发现的结果,dotnet
可能只是.NET平台本身的一个绰号,所以要回答我的问题,我认为这样做的方法是:
"net45": {
"frameworkAssemblies": {
...
}
},
"dnx451": {
"frameworkAssemblies": {
...
}
},
"dotnet": {
"dependencies": {
...
}
}
这与定位
dotnet
应该解决的问题相矛盾?我希望团队中有人对此有所了解。我认为,因为dnxcore50通常需要与dnx451中的框架汇编相对应的依赖项,所以不应使用dotnet作为目标,而应使用dnx451和dnxcore50,以便可以独立设置每种依赖项。我对目标网络了解不多,在早期的beta版vs类库项目模板中,该模板用于目标,但如果您使用较新的beta7工具创建类库项目,您现在可以使用dnx451和dnxcore50作为目标,我认为这是您应该使用的。问题是,dotnet
应该是您使用的,因此您不必显式指定您的目标框架是。您的依赖项会隐式地定义它们,或者我可能只是不明白它到底应该如何工作。