Я видел это в файле проекта на следующий день:
<ProjectReference Include="Foo\Bar\Baz.csproj">
<Project>{A GUID HERE}</Project>
<Name>Baz</Name>
<Private>False</Private> <!-- ??? -->
<ReferenceOutputAssembly>False</ReferenceOutputAssembly>
</ProjectReference>
Каждой node в ProjectReference кажется самоочевидной (файл проекта, GUID, имя, отображаемое в проводнике решений, и должен ли текущий проект ссылаться на указанный проект), кроме Private, а Общие объекты проекта MSBuild не документируют это значение. (Там параметр Private, задокументированный для Reference, а не ProjectReference - но он имеет настройки Never, Always и PreserveNewest, а не true и false)
Что делает эта настройка?