为什么在 $(FileName) 之前的最后一个文件夹,例如“由 MSBuild 删除的虚拟”在显示文件时被 Visual Studio 完全忽略?
<ItemGroup>
<!-- Protobuf files for ReSharper -->
<Content Include="$(SolutionDir)packages\Google.Protobuf.Tools.*\tools\google\protobuf\**\*.proto">
<Link>google\protobuf\dummy removed by MSBuild\$(FileName)</Link>
</Content>
</ItemGroup>
为什么在 $(FileName) 之前的最后一个文件夹,例如“由 MSBuild 删除的虚拟”在显示文件时被 Visual Studio 完全忽略?
大胆猜测,你想用$(FileName)
这些.proto
文件的文件名来获取。
要做到这一点,您应该使用%(Content.Filename)
代替$(FileName)
,因此代码如下所示:
<ItemGroup>
<Content Include="$(SolutionDir)packages\Google.Protobuf.Tools.*\tools\google\protobuf\**\*.proto">
<Link>google\protobuf\dummy removed by MSBuild\%(Content.Filename)</Link>
</Content>
</ItemGroup>
使用上面的代码,这些.proto
文件显示在解决方案资源管理器中MSBuild文件夹删除的虚拟文件下:
希望这可以帮助。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句