「[[マイクロソフト系技術情報 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]
変更の意味

>変更は、小さな変更のみがなされ、新バージョンは、~
依然として後方互換性を保っていることを意味する。

※ [[NuGetのバージョン番号>NuGetパッケージの開発と公開#t3a22c04]]には存在しない。

**.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

**NuGet関連 [#pa50441a]
***[[NuGetパッケージの開発と公開]] [#h025b5f1]
***[[NuGetパッケージのプレリリース版]] [#m06f169a]

**.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開発]]

トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS