我正在尝试使用BuildingInVsideisualStudio属性向csproj中的相同dll添加项目和文件引用.但是当它们在csproj中时,只会拾取文件引用.如果我删除文件引用,它会选择csproj.我试过交换订单,但没有运气.任何想法为什么这不起作用?
这是基本的想法:
<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>
Run Code Online (Sandbox Code Playgroud)
其他人也走了这条道路,但似乎有一些警告.因为我的构建过程无法改变,所以我需要这样做.使用文件引用迫使我失去Go to Definition和Find All References(抱歉,但我也无法安装ReSharper来解决这个问题).