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 ProjectReference
tampaknya 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 Private
pengaturan terdokumentasi untuk Reference
daripada ProjectReference
- tetapi memiliki Never
, Always
, dan PreserveNewest
pengaturan, tidak benar dan yang salah)
Apa fungsi pengaturan ini?
ProjectReference
item tersebut dikenali oleh (setidaknya) infrastruktur pendukung C # dan C ++ MSBuild; sepertinya sebagian besar ditangani dalam Microsoft.Common.CurrentVersion.targets
file.