1

我们正在使用一些第三方库,这些库有一些必须从项目中引用的依赖项。

所以每个“csproj”文件都会有一堆“ Reference ”元素,它们总是相同的。

有没有办法将这组元素分组到一个标准元素中,可以在所有 csproj 文件中使用?

例如:

<ABunchOfReferences>
    <Reference Include="Reference1" />
    <Reference Include="Reference2" />
    <Reference Include="Reference3" />
</ABunchOfReferences>
...
<ItemGroup>
    <ABunchOfReferences/>
    <Reference Include="System" />
    <Reference Include="System.Core" />
    ...
</ItemGroup>

“ABunchOfReferences”将是一种全局定义并包含在所有 csprojs 中的宏,使用时将扩展为 3 个“ Reference ”元素。

提前感谢您的任何想法。

4

2 回答 2

1

您可以将所有“ABunchOfReferences”放在一个单独的文件中,然后将该文件包含在您的 ItemGroup 中,如下所示:

<ItemGroup>
    <Import Project="PathToFile\yourBunchofReferenceFile" />
    <Reference Include="System" />
 ...
</ItemGroup>
于 2011-08-29T21:14:05.627 回答
1

You can set up your references in an import file, then selectively include them in the main file,

In References.props

<ItemGroup>
   <BunchOfReferences Include="Reference1" /> 
   <BunchOfReferences Include="Reference2" /> 
   <BunchOfReferences Include="Reference3" /> 
</ItemGroup>
<ItemGroup>
   <MoreReferences Include="MoreReference1" /> 
   <MoreReferences Include="MoreReference2" /> 
   <MoreReferences Include="MoreReference3" /> 
</ItemGroup>

...then in the individual project file

<Import Project="PathTo\References.props" />

<ItemGroup>
   <Reference Include="System" />
   <References Include="@(BunchOfReferences)" />
   <References Include="@(MoreReferences)" />
</ItemGroup>
于 2011-09-02T15:09:18.340 回答