Msbuild TeamCity构建参数:是否重用具有多个值的复选框?

Msbuild TeamCity构建参数:是否重用具有多个值的复选框?,msbuild,preprocessor,teamcity,Msbuild,Preprocessor,Teamcity,对于我的TeamCity配置,我有一个具有潜在预处理器宏定义的构建参数。这是一个带有此值的复选框:/p:DefineConstants=IncludeFleetSimulation。显然,它具有该值,因此我可以轻松地将其添加到MSBuild参数中。但是,我还想更改输出文件名。我不想。。。在文件名中。相反,我想要IFS。是否有某种方法可以通过TeamCity参数解析有条件地插入某些内容?我正在想象这样的事情:%IFS%!=_如果有的话:%。我如何在TeamCity做到这一点?我最后写了一个Nant

对于我的TeamCity配置,我有一个具有潜在预处理器宏定义的构建参数。这是一个带有此值的复选框:/p:DefineConstants=IncludeFleetSimulation。显然,它具有该值,因此我可以轻松地将其添加到MSBuild参数中。但是,我还想更改输出文件名。我不想。。。在文件名中。相反,我想要IFS。是否有某种方法可以通过TeamCity参数解析有条件地插入某些内容?我正在想象这样的事情:%IFS%!=_如果有的话:%。我如何在TeamCity做到这一点?

我最后写了一个Nant脚本步骤来实现这一点:

    <project name="RenameFilesBasedOnParamters" default="Rename">
     <target name="Rename">
     <property name="IncludeFleetSimulation" value="%IncludeFleetSimulation%" />
     <property name="currentDirectory" value="%system.teamcity.build.workingDir%" />
      <if test="${IncludeFleetSimulation != ''}">
       <foreach item="File" property="file">
        <in>
         <items basedir="${currentDirectory}">
          <include name="*%build.number%_%build.vcs.number%*" />
         </items>
        </in>
        <do>
         <move file="${file}"
               tofile="${currentDirectory + '\' + 
               path::get-file-name-without-extension(file) + 
               '_FS' + path::get-extension(file)}" />  
        </do>
       </foreach>  
      </if>
    ...