「[[マイクロソフト系技術情報 Wiki>http://techinfoofmicrosofttech.osscons.jp/]]」は、「[[Open棟梁Project>https://github.com/OpenTouryoProject/]]」,「[[OSSコンソーシアム .NET開発基盤部会>https://www.osscons.jp/dotNetDevelopmentInfrastructure/]]」によって運営されています。 -[[戻る>.NETアセンブリ]] * 目次 [#n3e4749d] #contents *概要 [#q30897bf] [[.NET Standard]]、[[.NET Core]]での設定方法を調査しがてら作成してみた。 *詳細 [#d5d3d873] [[AssemblyVersion>#b0abe8ac]]([[.NET Standard]]、[[.NET Core]]では[[Version>#j8b31cee]])~ を指定して、[[NuGetパッケージ>NuGetパッケージの開発と公開#r8c14f07]]のバージョンと一致させておけばよさそう。 **バージョン番号の付け方(.NET) [#va8ef7af] major.minor.build.revisionの形式で付与する。 ***メジャー バージョン番号(major) [#o7ced344] 変更の意味 -新バージョンが以前のバージョンと大きく異なる。 -後方互換性が失われている可能性が高い。 ***マイナー バージョン番号(minor) [#z3eb3e42] 変更の意味 -かなりの変更がなされたが、可能なかぎり後方互換性が保たれている。 -後方互換性 --以前のバージョンに無かった機能を含めることができる。 --しかし、旧い機能は改訂によって影響を受けてはいけない。 ***ビルド番号(build) [#b9553380] 変更の意味 -リビジョンがバグ修正のための必須のアップグレードであり、必ずインストールすべきことを意味する。 -クイック フィックス エンジニアリング (QFE) のバグ修正版は前のバージョンと互換性を保つ必要がある。 ***リビジョン番号(revision) [#r68525ab] 変更は、小さな変更のみがなされ、新バージョンは依然として後方互換性を保っていることを意味する。 **.NET Framework [#i02638d8] ***AssemblyVersion [#b0abe8ac] -アセンブリのバージョン。 -CLRが使用する。 --GAC(グローバル・アセンブリ・キャッシュ) --アセンブリ バージョンのリダイレクト -使用方法 --major.minor.build.revisionの形式 --buildとrevisionにはワイルドカード(*)を~ 指定する、コンパイラに自動的に値を決定する。 --AssemblyVersionのみを設定した場合、~ 他の2つのバージョンも同じ値になる。 ***AssemblyFileVersion [#q41bc5a6] -ファイルのバージョン -以下で使用される。 --Win32 EXE/DLLとしてのバージョン。 --プロパティ・ダイアログで表示されるファイルバージョン -使用方法 --major.minor.build.revisionの形式 --AssemblyFileVersionのみ設定した場合、~ 他の2つのバージョンも同じ値になる。 ***AssemblyInformationalVersion [#pf60f8bd] -ユーザー向けに表示される追加的なバージョン情報(製品バージョン) -使用方法 --major.minor.build.revision以外の形式 --他にも任意の文字列を指定できる。 --AssemblyInformationalVersionのみ設定した場合、~ 他の2つのバージョンは0.0.0.0になる。 **[[.NET Standard]]、[[.NET Core]]では、 [#r7db8857] [[.NET Standard]]、[[.NET Core]]では、*.csprojに移動になっている模様。 ***Version [#j8b31cee] すべてのバージョン番号の既定値になる値。 ***AssemblyVersion [#wcc0972d] - ≒ [[AssemblyVersion>#b0abe8ac]] -既定値は、[[Version>#j8b31cee]]に一致する。 ***FileVersion [#ad56f8d7] - ≒ [[AssemblyFileVersion>#q41bc5a6]] -既定値は、[[Version>#j8b31cee]]に一致する。 ***PackageVersion [#ycec5629] -NuGetパッケージの生成に使用される。 -既定値は、[[Version>#j8b31cee]]に一致する。 *参考 [#w3225908] -バージョン番号の付け方(.NET)~ https://www.barukichi.com/blogs/barulog.php?itemid=1114 **.NET Framework [#f6948fa4] -アセンブリのバージョン情報を取得する - Programming/.NET Framework/Tips - 総武ソフトウェア推進所~ https://smdn.jp/programming/netfx/tips/get_assembly_version_info/ -.NET のコンパイラーとバージョン情報 - 捨てられたブログ~ https://blog.recyclebin.jp/archives/3991 -アセンブリが持つ3つのバージョンの意味 - Caronte~ http://yuh.hatenadiary.jp/entry/2014/07/19/100718 -アセンブリ・バージョンとファイル・バージョンを一致させるには?[VS 2005のみ、C#、VB] - @IT~ http://www.atmarkit.co.jp/fdotnet/dotnettips/664setsamevesion/setsamevesion.html **[[.NET Standard]]、[[.NET Core]]-Stack Overflow [#i7c6cb4f] -Do I need AssemblyInfo while working with .NET Core?~ https://stackoverflow.com/questions/39163558/do-i-need-assemblyinfo-while-working-with-net-core --visual studio - Equivalent to AssemblyInfo in dotnet core/csproj~ https://stackoverflow.com/questions/42138418/equivalent-to-assemblyinfo-in-dotnet-core-csproj -.NET Core の csproj 形式に追加されたもの | Microsoft Docs~ https://docs.microsoft.com/ja-jp/dotnet/core/tools/csproj ---- Tags: [[:.NET開発]]