Microsoft在这段关于PackageReference的文章中试图表达什么?

时间:2018-12-06 22:15:24

标签: msbuild nuget nuget-package

相关段落在这里-https://docs.microsoft.com/en-us/nuget/consume-packages/package-references-in-project-files#using-packagereference-for-a-project-with-no-packagereferences

在这里我引用它:

  

对没有PackageReferences的项目使用PackageReference

     

高级:如果您没有在项目中安装任何软件包(没有   项目文件中的PackageReferences(没有package.config文件),但是   想要将项目还原为PackageReference样式,可以设置   您的项目属性RestoreProjectStyle to PackageReference   项目文件。

<PropertyGroup>
    <!--- ... -->
    <RestoreProjectStyle>PackageReference</RestoreProjectStyle>
    <!--- ... -->
</PropertyGroup>    
     

如果您引用的项目是   PackageReference样式(现有的csproj或SDK样式的项目)。这个   将使那些项目引用的软件包成为   您的项目引用的“传递”。

有人可以将其翻译成英文吗? (俄语或希伯来语也可以)

1 个答案:

答案 0 :(得分:1)

“ PackageReference”功能不只是将对NuGet包的引用添加到单个项目中。它还启用了构建工具中的一些功能,这些功能对于基于package.config的项目不可用。

为尚未(尚未)引用任何NuGet包的项目设置此属性可完成两件事:

  1. 启用引用的传递流:如果项目引用了另一个引用NuGet包的项目(通过ProjectReference),则这些包将在当前项目以及引用该项目的项目中可用

  2. 使用Nuget软件包管理器只会将PackageReference个项目添加到项目文件中。根据Visual Studio实例的配置方式,它可能使用packages.config个文件,PackageReference个项目,或者在首次安装软件包时询问您。通过设置此属性,您可以强制其创建PackageReference个项目。