我正在尝试自动化为所有DLL设置版本的过程,花了一些时间后我才开始了解AssemblyInfo最有可能实现的任务.
所以我继续安装它,特别是版本1.0.51130.0.
安装后,我手动添加的Import标签(通过卸载每个项目)的AssemblyInfoTask在.cspoj文件(该溶液具有大于35个PROJ文件).
<Import Project="$(MSBuildExtensionsPath)\Microsoft\AssemblyInfoTask\Microsoft.VersionNumber.Targets"/>
Run Code Online (Sandbox Code Playgroud)
接下来我修改了Microsoft.VersionNUmber.Target将在path:中安装的文件C:\Program Files\MSBuild\Microsoft\AssemblyInfoTask,并修改了以下部分:
<!-- Properties for controlling the Assembly Version -->
<PropertyGroup>
<AssemblyMajorVersion>4</AssemblyMajorVersion>
<AssemblyMinorVersion>0</AssemblyMinorVersion>
<AssemblyBuildNumber></AssemblyBuildNumber>
<AssemblyRevision></AssemblyRevision>
<AssemblyBuildNumberType>DateString</AssemblyBuildNumberType>
<AssemblyBuildNumberFormat>01MMdd</AssemblyBuildNumberFormat>
<AssemblyRevisionType>AutoIncrement</AssemblyRevisionType>
<AssemblyRevisionFormat>00</AssemblyRevisionFormat>
</PropertyGroup>
<!-- Properties for controlling the Assembly File Version -->
<PropertyGroup>
<AssemblyFileMajorVersion>4</AssemblyFileMajorVersion>
<AssemblyFileMinorVersion>0</AssemblyFileMinorVersion>
<AssemblyFileBuildNumber></AssemblyFileBuildNumber>
<AssemblyFileRevision></AssemblyFileRevision>
<AssemblyFileBuildNumberType>DateString</AssemblyFileBuildNumberType>
<AssemblyFileBuildNumberFormat>01MMdd</AssemblyFileBuildNumberFormat>
<AssemblyFileRevisionType>AutoIncrement</AssemblyFileRevisionType>
<AssemblyFileRevisionFormat>00</AssemblyFileRevisionFormat>
</PropertyGroup>
Run Code Online (Sandbox Code Playgroud)
接下来,我将assemblyInfo.cs文件的版本设置1.0.0.0为每个项目.最后我保存并关闭它,重新打开解决方案并构建.它就像一个冠军!
现在什么要的是定制版本来4.0.1053.1这里10是今年指标是2010年的部分53代表周数,最后1表示版本号.
如何使用AssemblyInfoTask 实现这一目标?我发现了几个帖子,AssemblyInfo在Build Extension Pack中可以使用新版本的Task. …
我试图使用WriteCodeFragment MSBuild任务创建AssemblyVersion属性。我在创建属性组以正确传递处理所需的ITaskItem数组时遇到问题。有人可以帮忙一个例子。
msbuild msbuild-task msbuild-propertygroup visual-studio msbuild-4.0