Ich habe eine Situation, in der ich möchte, dass die Versionierung zur Build-Zeit dynamisch ist.
Versionsmuster: <year>.<month>.<day>.<hhmm>
Aber ich habe gelesen, wo der String-Wert, der im Attribut verwendet wird, zur Kompilierzeit repariert wird.
Gibt es Hinweise, wie Sie diese dynamische Versionierung erhalten?
Ideale Situation:
%Vor%Ich weiß, dass es nicht funktioniert, aber sollte den Punkt akrostichiert bekommen.
Sie können die MsbuildCommunityTasks verwenden, um die Build-Nummer zu generieren und die Version der Assembly-Datei während der Vorbereitungszeit anzupassen.
Laden Sie die Zip-Datei herunter MsbuildCommunityTasks
Entpacken Sie in den Ordner [SolutionFolder] \ MsBuildExtensions \ MSBuildCommunityTasks
Fügen Sie das folgende Beispiel für Ihr Projekt (csproj) direkt nach dem Import von Microsoft.CSharp.Targets hinzu.
%Vor%
Löschen Sie das AssemblyFileVersion-Attribut aus Ihrer AssemblyInfo.cs. Es wird zur Erstellungszeit generiert.
Sie sehen die Versionsnummer, die beim Erstellen auf der Konsole ausgegeben wird. Die generierte Datei wird auf dem AfterBuild-Ziel gelöscht, um die Quellcodeverwaltung sauber zu halten.
VorBuild:
Gebäude 2013.01.14.1016 ... Die AssemblyInfo-Datei "Properties \ AssemblyVersionInfo.cs" wurde erstellt.
(...)
AfterBuild:
Löschen der Datei "Properties \ AssemblyVersionInfo.cs".
Wenn Sie dies für viele Projekte mit weniger Msbuild-Code tun möchten, müssen Sie ein benutzerdefiniertes Build-Skript erstellen, um Ihre Lösung zu vervollständigen.
Tags und Links c# vb.net assemblyfileversion