[assembly: AssemblyCopyright("Copyright © 2009")]
是否有可能以某种方式访问 AssemblyInfo 类中的 DateTime.Now.Year 之类的函数?以便输入
[assembly: AssemblyCopyright("Copyright © " + DateTime.Now.Year)]
执行上述操作会给出,当前上下文中不存在 DateTime
[assembly: AssemblyCopyright("Copyright © 2009")]
是否有可能以某种方式访问 AssemblyInfo 类中的 DateTime.Now.Year 之类的函数?以便输入
[assembly: AssemblyCopyright("Copyright © " + DateTime.Now.Year)]
执行上述操作会给出,当前上下文中不存在 DateTime
开箱即用,没有,但是有 2 个选项可以针对您的程序集文件访问 .NET 功能。
执行示例的最简单方法是使用MSBuildExtensionPack中的 AssemblyInfo 任务。
安装完成后,您可以使用该任务中的所有方法http://www.msbuildextensionpack.com/help/4.0.4.0/index.html,如下所示:
<Target Name="Version">
<ItemGroup>
<AssemblyInfoFiles Include="$(SourcePath)\Code\Properties\AssemblyInfo.cs"/>
</ItemGroup>
<MSBuild.ExtensionPack.Framework.DateAndTime TaskAction="Get" Format="yyyy">
<Output TaskParameter="Result" PropertyName="MyStartTime"/>
</MSBuild.ExtensionPack.Framework.DateAndTime>
<MSBuild.ExtensionPack.Framework.AssemblyInfo ComVisible="false" AssemblyInfoFiles="@(AssemblyInfoFiles)" AssemblyBuildNumberType="YearWeekDay" FirstDayOfWeek="Sunday" AssemblyBuildNumber="4" AssemblyCopyright=" Foo Copyright $(MyStartTime)"/>
</Target>
另一种选择是自行创建自定义 msbuild 任务并以这种方式公开其他功能。