Я пытаюсь добавить ссылку на проект и файл в ту же DLL в csproj с свойством BuildingInVsideisualStudio. Но когда они находятся в csproj вместе, выбирается только ссылка на файл. Если я удалю ссылку на файл, он возьмет csproj. Я попытался заменить порядок, но не повезло. Любые идеи, почему это не работает?BuildingInsideVisualStudio Значение свойства не работает с ссылкой на файл и ссылкой на проект Условное
Вот основная идея:
<ItemGroup Condition="'$(BuildingInsideVisualStudio)' == false">
<Reference Include="MyNamespace.Mine">
<HintPath>..\$(OutDir)\MyNamespace.Mine.dll</HintPath>
</Reference>
</ItemGroup>
<ItemGroup Condition="'$(BuildingInsideVisualStudio)' == '' Or '$(BuildingInsideVisualStudio)' == true">
<ProjectReference Include="..\MyNamespace.Mine.csproj">
<Project>{GUID}</Project>
<Name>MyNamespace.Mine</Name>
</ProjectReference>
</ItemGroup>
Someone else пошел по этому пути, тоже, но оказывается есть some caveats. Мне нужно сделать это условно из-за моего процесса сборки, который не может измениться. Использование ссылки на файл заставляет меня потерять Go to Definition и Find All References (извините, но я не могу установить ReSharper для решения этой проблемы).
Это сработало. Отсасывает немного, что dll все еще появляется, но преимущества кажутся лишним весом. – kevindaub