Visual studio 在VisualStudio中链接其他文件
我正试图将stylecop.json纳入我在Visual Studio 2017上的C#项目中。通过在任何文本编辑器中修改.csproj,我已经了解了如何做到这一点:Visual studio 在VisualStudio中链接其他文件,visual-studio,csproj,Visual Studio,Csproj,我正试图将stylecop.json纳入我在Visual Studio 2017上的C#项目中。通过在任何文本编辑器中修改.csproj,我已经了解了如何做到这一点: <AdditionalFiles Include="stylecop.json"> <Link>stylecop.json</Link> </AdditionalFiles> stylecop.json 我想知道是否有一种方法可以做到这一点,而无需进行任何文本编辑。
<AdditionalFiles Include="stylecop.json">
<Link>stylecop.json</Link>
</AdditionalFiles>
stylecop.json
我想知道是否有一种方法可以做到这一点,而无需进行任何文本编辑。我知道我可以像添加任何其他文件一样添加它,但这会在项目文件夹中创建文件的副本,而不会在外部链接它。您可以在解决方案目录中的某个位置添加一个
目录.Build.targets
文件(将应用于该目录下的所有项目),其内容如下:
<Project>
<ItemGroup>
<AdditionalFiles Update="@(AdditionalFiles)">
<Link Condition="'%(Link)' == ''">%(Identity)</Link>
</AdditionalFiles>
</ItemGroup>
</Project>
这甚至会保留与匹配的项目的目录层次结构,例如。\shared\***.json
,并且可以使用LinkBase
元数据设置目标文件夹:
<AdditionalFiles Include="..\shared\**\*">
<LinkBase>SharedFiles</LinkBase>
</AdditionalFiles>
共享文件
请注意,更改
目录.Build.targets
后,可能需要关闭并重新打开解决方案。在即将到来的VS 2017 15.3更新中,VS将自动监控变更。在以前的版本中,VS将缓存该文件,直到解决方案关闭。您可以在解决方案目录中的某个位置添加一个目录.Build.targets
文件(将应用于该目录下或该目录下的所有项目),该文件包含以下内容:
<Project>
<ItemGroup>
<AdditionalFiles Update="@(AdditionalFiles)">
<Link Condition="'%(Link)' == ''">%(Identity)</Link>
</AdditionalFiles>
</ItemGroup>
</Project>
这甚至会保留与匹配的项目的目录层次结构,例如。\shared\***.json
,并且可以使用LinkBase
元数据设置目标文件夹:
<AdditionalFiles Include="..\shared\**\*">
<LinkBase>SharedFiles</LinkBase>
</AdditionalFiles>
共享文件
请注意,更改目录.Build.targets
后,可能需要关闭并重新打开解决方案。在即将到来的VS 2017 15.3更新中,VS将自动监控变更。在以前的版本中,VS将缓存该文件,直到解决方案关闭