[C#]バージョンに*を使う

 コンパイルするたびに異なるバージョンにしたいとき、ワイルドカード(アスタリスク *)を使うことができます (.NET 9 SDK で試しています)

*.csproj

ワルイドカードを使えるように *.csproj ファイルを設定します
次のように Deterministic 行を追加し、false を設定します

<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
(省略)
<Deterministic>false</Deterministic>
</PropertyGroup>
</Project>

*.AssemblyInfo.cs

 いちどコンパイルすると .\obj\Release\net9.0-windows\win-x64\*.AssemblyInfo.cs ファイルがつくられますが、そのファイルにある AssemblyVersionAttribute を 1.0.* などワルイドカード付きに変更します
 バージョンを設定する行が複数ありますが、他の AssemblyFileVersionAttribute, AssemblyInformationalVersionAttribute などは削除して構いません

 バージョンなどよく変更するものは *.AssemblyInfo.cs から削除して、Main 関数がある Program.cs ファイルなどへ移すことができます