Im Hinblick auf die Konvention, die NuGet Software selbst, und die Semantik es um Pakete in der Galerie gilt, tun Versionierung von SemVer beschrieben. Speziell können Sie Beta-Versionen durch Suffix Ihrer Nuspec-Versionsnummer mit "-beta.4" oder etwas festlegen. Sehen Sie sich beispielsweise an, wie die Galerie the latest version of AutoFac anzeigt, und vergleichen Sie, wie sie an old release anzeigt (). Beachten Sie den Text "Dies ist nicht die neueste Version von Autofac verfügbar."Bearbeiten: Die Galerie scheint keine spezielle Nachricht mehr für nicht bereitzustellen (aktuelle Versionen) und an old PRE-release version (mit dem Text "Dies ist eine Vorabversion von Autofac.").
Leider kann die AssemblyVersion
in AssemblyInfo.cs
keine Buchstaben oder Bindestriche enthalten, so dass es nicht auf diese Weise verwendet werden kann. Jedoch kann die AssemblyInformationalVersion
Buchstaben und Bindestriche enthalten und, wenn Sie es zur Verfügung stellen, wird NuGet das anstelle der AssemblyVersion
Token in Ihrer Nuspec-Datei ersetzen, um das $version$
Token zu ersetzen. Was mehr ist, die AssemblyInformationalVersion
(auch als "Produkt-Version", wenn Sie die Details einer DLL in Windows Explorer überprüfen), zumindest für mich, besser darstellt, was die NuGet-Version übereinstimmen sollte.
Ich habe eine leichte Sorge mit diesem Ansatz, dass ich erwartet, dass die AssemblyVersion
die gleichen durch verschiedene Beta-Iterationen und eine Endfertigung Iteration der AssemblyInformationalVersion
, zu verlassen, was bedeutet, ich bin so dass mehrere verschiedene Versionen meiner DLL in die wilden, die sich anders oder falsch verhalten können, sind aber alle so weit wie die CLR betroffen ist (die CLR nur kümmert sich um AssemblyVersion
). In der Praxis passiert dies jedoch häufig (einschließlich der oben beschriebenen AutoFac-Pakete), und es scheint kein Problem zu verursachen.
Sehen Sie die zwei ausgezeichneten Antworten auf What are differences between AssemblyVersion, AssemblyFileVersion and AssemblyInformationalVersion? für mehr Informationen über AssemblyInformationalVersion
und Freunde.