エラーCS8357が発生する
アセンブリのバージョン指定にワイルドカードを使用してビルド毎にバージョンを自動アップしていました。
VS2017で久しぶりにこの機能を使おうと思ったら、
「テキストを一連のUTF-16コード単位として表現します。この型の.NET Frameworkソースコードを参照するには、参照リソースをご覧ください。」
「指定されたバージョン文字列にワイルドカードが含まれていますが、これは決定性と相容れません。バージョン文字列からワイルドカードを削除するか、このコンパイルで決定性を無効にします」
が発生してしまいます。
とりあえずビルドしてみると
「エラー CS8357 指定されたバージョン文字列にワイルドカードが含まれていますが、これは決定性と相容れません。バージョン文字列からワイルドカードを削除するか、このコンパイルで決定性を無効にします 」
が発生してしまいます。
環境
Windows10 Pro
Visual Studio 2022
対処方法
ファイル”<プロジェクト名>.csproj”を開き、<PropertyGroup>内にある<Deterministic>の要素値がtrueになっているところをfalseに書き換えます。
補足
アセンブリのバージョン自動設定ではビルド時にバージョンをインクリメントしてくれるようではないです。
実際には、
メジャーバージョンとマイナーバージョンは手動指定のみ
ビルド番号は2000/1/1からの経過日数
リビジョンはその日の00:00:00からの経過秒数を2で割った数
のようです。
<メジャーバージョン>.<マイナーバージョン>.<ビルド番号>.<リビジョン>