VS Code使用.csproj扩展时如何指定Content条目添加到的ItemGroup
实现方法
你可以通过调整.csproj扩展的内置配置项,自主控制Content条目的插入位置,完全对齐VS 2022的操作行为,具体操作如下:
基础位置选择
- 打开VS Code设置面板,快捷键为
Ctrl+,(Windows/Linux)或Cmd+,(Mac) - 在设置搜索栏输入
csproj.itemGroup找到对应配置项,根据需求选择取值:
first:新增条目默认插入到文件中第一个符合条件的ItemGroup节点,对应你举例的第一种插入效果last:新增条目默认插入到文件中最后一个符合条件的ItemGroup节点,对应你举例的第二种插入效果matching:这是和VS 2022行为完全一致的选项,扩展会自动识别现有ItemGroup的子节点类型、Label标签,将同类型条目归类到已存在的对应分组中,没有匹配分组时才会新建节点。
固定插入到指定ItemGroup
如果需要把新增Content条目固定插入到某一个特定的ItemGroup,可以通过标签绑定的方式实现:
- 给你想要作为目标的
ItemGroup节点添加自定义Label属性,示例结构如下:
<ItemGroup> </ItemGroup> <!-- 给目标节点加自定义Label --> <ItemGroup Label="CustomContentGroup"> </ItemGroup>
- 在VS Code设置中搜索
csproj.preferredItemGroupLabel,将配置值填写为你刚才给目标ItemGroup设置的Label值,本例中就是CustomContentGroup - 保存设置后,所有后续新增的
Content条目都会优先插入到这个带指定Label的ItemGroup中。
对齐VS 2022行为的补充配置
为了完全匹配VS 2022的csproj处理逻辑,还需要找到csproj.keepExistingItemGroupStructure配置项并勾选开启,开启后扩展不会随意调整你现有csproj文件中已经存在的ItemGroup节点顺序和结构,和VS的处理逻辑完全一致。
注意:所有配置修改后即时生效,不需要重启VS Code。
内容的提问来源于stack exchange,提问作者manymanymore
相关产品推荐
相关产品推荐

