2011-12-13 48 views
0

我有一个通过ClickOnce发布的项目;这个项目包含一些用于本地化的DLL。但正如你所知,这些DLL并没有直接引用该项目。它们位于项目的分离文件夹中。通过Team Build 2010更改文件的构建操作属性

由于代码分析警告,我们将这些文件的“构建操作”属性配置为无。 但是,如果发布的时候它们的Build Action = None,那么你猜Visual Studio不会将它们包含到包中。因此,在我们开始发布之前,我们将其构建操作属性更改为内容。

但现在,我想通过Team Build 2010发布;所以Team Build将创建ClickOnce包。但是我找不到更改文件的“生成操作”属性的方法。

这有什么可能吗?

回答

0

我使用Condition属性找到了自己的解决方案。

项目文件根据其“构建操作”属性包含解决方案项目。 例如, 如果文件的生成操作=无,项目文件中包含像这样

<None Include="MyRequiredAssembly.dll" /> 

否则,如果文件的生成操作=内容它看起来像这样

<Content Include="MyRequiredAssembly.dll" /> 

所有这些文件都被细分电子邮件输入<ItemGroup>并且ItemGroup标签具有Condition属性。 所以我决定使用Condition来更改这样的Build Action属性。

<ItemGroup Condition="'$(Configuration)|$(Platform)' == 'Publish|AnyCPU'"> 
    <Content Include="MyRequiredAssembly.dll" /> 
</ItemGroup> 
    <ItemGroup Condition="'$(Configuration)|$(Platform)' == 'Publish|AnyCPU'"> 
<None Include="MyRequiredAssembly.dll" /> 
</ItemGroup> 

我希望这对你也有帮助。

相关问题