<p>Si vous ajoutez une classe <a href="http://msdn.microsoft.com/en-us/library/system.reflection.assemblyversionattribute.assemblyversionattribute.aspx">AssemblyInfo</a> à votre projet et modifiez l’attribut <code>AssemblyVersion</code> pour qu’il se termine par un astérisque, par exemple :</p>
<pre><code class="lang-auto">[assembly: AssemblyVersion("2.10.*")]
</code></pre>
<p>Visual Studio incrémentera le dernier nombre pour vous selon <a href="http://msdn.microsoft.com/en-us/library/system.reflection.assemblyversionattribute.aspx">ces règles</a> (merci galets, j’avais complètement tort !)</p>
<p>Pour référencer cette version dans le code, afin de l’afficher à l’utilisateur, vous utilisez la <code>réflexion</code>. Par exemple,</p>
<pre><code class="lang-auto">Version version = System.Reflection.Assembly.GetExecutingAssembly().GetName().Version;
DateTime buildDate = new DateTime(2000, 1, 1)
.AddDays(version.Build).AddSeconds(version.Revision * 2);
string displayableVersion = $"{version} ({buildDate})";
</code></pre>
<p>Trois points importants à connaître</p>
<p>De <span class="mention">@ashes999</span> :</p>
<p>Il est également important de noter que si <code>AssemblyVersion</code> et <code>AssemblyFileVersion</code> sont tous deux spécifiés, vous ne verrez pas cela sur votre .exe.</p>
<p>De <span class="mention">@BrainSlugs83</span> :</p>
<p>Définir uniquement le 4e nombre avec <code></code> peut être problématique, car la version n’augmentera pas toujours.<br>
<strong>Le 3e nombre est le nombre de jours depuis l’an 2000</strong>, et <strong>le 4e nombre est le nombre de secondes depuis minuit (divisé par 2) [CE N’EST PAS ALÉATOIRE]</strong>. Donc si vous compilez la solution tard dans la journée un jour, et tôt dans la journée le lendemain, la compilation ultérieure aura un numéro de version antérieur. Je recommande de toujours utiliser <code>X.Y.</code> au lieu de <code>X.Y.Z.*</code> car votre numéro de version augmentera TOUJOURS de cette façon.</p>
<p>Les versions plus récentes de Visual Studio affichent cette erreur :</p>
<p><strong>(ce fil a débuté en 2009)</strong></p>
<p>La chaîne de version spécifiée contient des caractères génériques, qui ne sont pas compatibles avec le déterminisme. Supprimez les caractères génériques de la chaîne de version ou désactivez le déterminisme pour cette compilation.</p>
<p>Consultez cette réponse SO qui explique comment [supprimer le déterminisme](<a href="https://stackoverflow.com/a/58101474">https://stackoverflow.com/a/58101474</a></p>
<p><em>(Réponse tronquée)</em></p>