Version d'accès de AssemblyInfo à Msbuild
-
13-12-2019 - |
Question
J'essaie de créer / poussez le package Nuget via Visual Studio Cays-Process comme expliqué ici .
Le forfait de construction est facile:
<Exec WorkingDirectory="$(ProjectDir)" Command="$(NuGetApp) pack $(ProjectFile) -OutputDirectory $(Deploy) -Verbose -Prop Configuration=Release"/>
Je vois le fichier .NUPKG dans le dossier $ (déployer).
Mais pour pouvoir le pousser, j'ai besoin de $ (assembléeVersion) pour l'utiliser dans:
<Exec Command="$(NuGetApp) push $(ProjectName)$(AssemblyVersion) -s $(NugetServer) $(NugetKey)" />
J'ai essayé xmlread d'aller chercher la valeur, mais la valeur dans NugetsPecFile est "$ version $" au lieu de la version de AssemblyInfo.cs.
<XmlRead XPath="/package/metadata/version" XmlFileName="$(NuSpecFile)">
<Output TaskParameter="Value" PropertyName="AssemblyVersion" />
</XmlRead>
Comment accéder à la version d'accès pour que je puisse l'utiliser dans "Nuget Push"?
La solution
C'est ce que je vais le faire:
<PropertyGroup>
<MyAssemblies>somedll\the.dll</MyAssemblies>
</PropertyGroup>
<Target Name="RetrieveIdentities">
<GetAssemblyIdentity
AssemblyFiles="$(MyAssemblies)">
<Output
TaskParameter="Assemblies"
ItemName="MyAssemblyIdentities"/>
</GetAssemblyIdentity>
<Message Text="Files: %(MyAssemblyIdentities.Version)"/>
</Target>
altéré d'ici: tâche MSBUILD à lire la version de DLL
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow