gpt4 book ai didi

.net - MSBuild 项目引用 :private ("Copy Local") - what are the allowed values and behaviour?

转载 作者:行者123 更新时间:2023-12-02 03:49:48 25 4
gpt4 key购买 nike

TL;DR 是否有任何官方文档详细描述 <private> 如何/“复制本地”选项可以与 MSBuild 一起使用吗?其中应该包含哪些值?

<小时/>

当你 add a project reference从 Visual Studio 中的一个项目到另一个项目,它会添加 <ProjectReference Include=".....csproj">.csproj MSBuild 文件。

当你 add a file reference从 Visual Studio 中的一个项目到文件系统中的程序集文件,它会添加一个 <Reference Include="Foo"> <HintPath>....Foo.dll</HintPath> ....csproj MSBuild 文件。

两种情况下,对于 Visual Studio 设置 Copy Local = True|False ,子元素 <Private>True</Private><Private>False</Private>将会添加。

ReferenceProjectReference似乎记录在Common MSBuild Project Items下:

<ProjectReference>
Represents a reference to another project.

Item Name Description
-------------------------
Name ...
Project ...
Package ...

<Reference>
Represents an assembly (managed) reference in the project.

Item Name Description
--------------------------
HintPath Optional string. Relative or absolute path of the assembly.
Name ...
...
Private Optional string. Determines whether to copy the file to the output directory.
Values are:
1. Never
2. Always
3. PreserveNewest

你会注意到,

  1. ProjectReference 没有记录 <private>根本没有项目
  2. Reference 未列出 TrueFalse尽可能的值。

所以。嗯?是否有任何官方文档(我会对一篇好的博客文章感到非常满意)详细描述<private>如何选项有效吗? 该文档是完全错误的还是还有其他原因?

<小时/>

这里是我的 VS 2013 Express 的示例片段:

...
<ItemGroup>
<Reference Include="ClassLibrary2">
<HintPath>C:\Somewhere\ClassLibrary2.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="System" />
...
<ItemGroup>
<ProjectReference Include="..\ClassLibrary1\ClassLibrary1.csproj">
<Project>{861dd746-de2e-4961-94db-4bb5b05effe9}</Project>
<Name>ClassLibrary1</Name>
<Private>False</Private>
</ProjectReference>
...

最佳答案

对于引用和项目引用项目,接受的 Private 值为:True 或 False

msbuild 中的此属性与 VS 中的项目引用属性相对应,即“复制本地”。

我通过在VS中手动设置引用属性并查看xml得到了上述答案。我找不到私有(private)项目元数据的官方文档。

检查文档 https://msdn.microsoft.com/en-us/library/bb629388.aspx将接受的值显示为“从不”、“始终”和“保留最新”。这些似乎是错误的,并且仅适用于 CopyLocal 元数据,该元数据用于 Content、None 和其他文件项。

关于.net - MSBuild 项目引用 :private ("Copy Local") - what are the allowed values and behaviour?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26168401/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com