Saya melihat ini di file proyek beberapa hari yang lalu:
<ProjectReference Include="Foo\Bar\Baz.csproj">
<Project>{A GUID HERE}</Project>
<Name>Baz</Name>
<Private>False</Private> <!-- ??? -->
<ReferenceOutputAssembly>False</ReferenceOutputAssembly>
</ProjectReference>
Setiap node di a ProjectReferencetampaknya cukup jelas (file proyek yang direferensikan, GUID, nama yang akan ditampilkan di explorer solusi, dan apakah proyek saat ini harus ditautkan ke proyek yang dirujuk) kecuali Private, dan halaman Common MSBuild Project Items tidak t mendokumentasikan nilai ini. (Ada Privatepengaturan terdokumentasi untuk Referencedaripada ProjectReference- tetapi memiliki Never, Always, dan PreserveNewestpengaturan, tidak benar dan yang salah)
Apa fungsi pengaturan ini?
ProjectReferenceitem tersebut dikenali oleh (setidaknya) infrastruktur pendukung C # dan C ++ MSBuild; sepertinya sebagian besar ditangani dalam Microsoft.Common.CurrentVersion.targetsfile.