Я сделал это с помощью задачи <WriteLinesToFile/>
, когда создавал версию AllowPartiallyTrustedCallers проекта uNHAddIns. Модифицированная цель GenerateAssemblyInfo выглядела так:
<Target Name="GenerateAssemblyInfo" DependsOnTargets="HgRevision; SVNRevision">
<MakeDir Directories="$(AssemblyOutputDir)" />
<Message Text="Writing the revision number $(BUILD_VCS_NUMBER) in assemblyinfo.cs." />
<AssemblyInfo
AssemblyCompany ="$(AssemblyCompany)"
AssemblyCopyright="$(AssemblyCopyright)"
AssemblyDescription="$(AssemblyDescription)"
AssemblyProduct="$(AssemblyProduct)"
AssemblyTitle ="$(AssemblyTitle)"
CodeLanguage="$(AssemblyCodeLanguage)"
CLSCompliant ="$(AssemblyClsCompliant)"
AssemblyInformationalVersion="$(AssemblyVersion).$(BUILD_VCS_NUMBER)"
AssemblyVersion ="$(AssemblyVersion).$(BUILD_VCS_NUMBER)"
OutputFile="$(AssemblyOutputFile)"
/>
<WriteLinesToFile File="$(AssemblyOutputFile)" Lines="[assembly: System.Security.AllowPartiallyTrustedCallers]" />
</Target>
Не очень красиво, но это работает (я использую msbuild 3.5)