我无法找到有关" build"之间区别的信息。和平台" (可能还有其他一些)依赖类型,默认类型是什么。
例如,我可以使用
添加依赖项"Microsoft.Extensions.JsonParser.Sources": "1.0.0"
或
"Microsoft.Extensions.JsonParser.Sources": {
"type": "build",
"version": "1.0.0"
},
或
"Microsoft.Extensions.JsonParser.Sources": {
"type": "platform",
"version": "1.0.0"
},
那么如何选择? Official documentation尚未包含有关此内容的信息。
答案 0 :(得分:5)
我建议避免手动编辑这个文件,这样你就不必过多地关注它了。此外,还有plans完全删除它 - 这样您甚至不会再使用project.json
文件来定义dependencies
。根据{{1}}的{{3}},project.json
键定义如下:
type
构建 =仅在构建项目时需要的依赖项JSON SchemaStore definition
platform =预期驻留在项目配置为"type": {
"type": "string",
"default": "default",
"enum": [ "default", "build", "platform" ]
的平台上的依赖项。
类型"平台"该依赖项的属性意味着在发布时,工具将跳过将该依赖项的程序集发布到已发布的输出。
如果你检查 dotnet repo中build-time dependency的来源,你会看到它如何将这个JSON序列化为一个对象,在这个对象中我们可以找到它的含义(详见上文) )。
补充阅读
答案 1 :(得分:0)
文档确实说明了(至少对于平台而言),你只需要看一下正确的地方:)
您可以在.NET Core App Types页面找到它。基本上,"平台"表示从已安装的运行时使用它,并且在发布/部署应用程序时不会打包。
基本上你使用" platform"用于便携式应用程序,没有用于自包含应用程序的类型