msbuild脚本中的日期格式?

Gor*_*ran 11 msbuild scripting date msbuild-task msbuildcommunitytasks

在我的msbuild脚本中,我在zip文件名中创建了一个包含年/月/日的zip文件,但是月和日总是写成没有前导零.

有没有办法将前导零添加到我的zip文件名?

<Time>
  <Output TaskParameter="Year" PropertyName="Year" />
  <Output TaskParameter="Month" PropertyName="Month" />
  <Output TaskParameter="Day" PropertyName="Day" />
</Time>

<PropertyGroup>
  <ZipOutDir>C:\output</ZipOutDir>
  <ZipFileName>Application_$(Year)$(Month)$(Day).zip</ZipFileName>
</PropertyGroup>
Run Code Online (Sandbox Code Playgroud)

结果是:'Application_2010122.zip'(1月没有前导零,你可以看到)

Mas*_*low 27

在msbuild 4中,你现在可以

$([Namespace.Type]::Method(..parameters…))
$([Namespace.Type]::Property)
$([Namespace.Type]::set_Property(value))
Run Code Online (Sandbox Code Playgroud)

所以我正在使用

$([System.DateTime]::Now.ToString(`yyyy.MMdd`))
Run Code Online (Sandbox Code Playgroud)

格式周围的那些刻度不是反引号 '


Rub*_*ink 4

您可以使用 MSBuild 扩展包:

http://www.msbuildextensionpack.com/help/3.5.3.0/html/9c5401ed-6f55-089e-3918-2476c186ca66.htm

或者使用社区任务中的时间任务的格式参数[您似乎正在使用]

MSBuild MSBuildCommunityTasks 任务时间