作成日: 2024/01/25 最終更新日: 2024/01/25
文書種別
技術情報
詳細
ComponentOne for WinForms 2023J v3では、NuGetパッケージがマルチターゲットに対応しました。
単一のNuGetパッケージに複数のアセンブリ(DLL)が収録されており、プロジェクトのターゲットフレームワークのバージョンごとに異なるNuGetパッケージを選択する必要はありません。
なお、ComponentOneでは通常、.NET Framework用/.NET用にそれぞれ以下のような名前のNuGetパッケージを提供しています。
(1).NET Framework用:
"C1.Win.C1FlexGrid.Ja・・・"(コンポーネント名を表す部分に"C1"がつきます)
(2).NET用:
"C1.Win.FlexGrid.Ja・・・" (コンポーネント名を表す部分に"C1"がつきません)
.NET Frameworkプロジェクトでは(1)を、.NETプロジェクトでは(2)をインストールすると、プロジェクトのターゲットフレームワークのバージョンに合わせて、自動的に適切なアセンブリが参照されます。
※ nuget.orgのNuGetパッケージ情報(FlexGridの.NET Framework用NuGetの場合)

【メモ】
コンポーネントによっては、1つのNuGetパッケージに.NET Framework用/.NET用のすべてのアセンブリが収録されているものもあります。
例)C1.Win.FlexChart.Ja.8.0.20233.631.nupkg
C1.Win.FlexChart.4.6.2.dll、C1.Win.FlexChart.4.8.dll、C1.Win.FlexChart.6.dll、C1.Win.FlexChart.8.dllを収録
どのコンポーネントがこれに該当するか(*)を判断するには、ComponentOne利用ガイドの下記項目をご参照下さい。
◇ComponentOne 利用ガイド
移行ガイド > Nuget パッケージ対応一覧 > WinForms
(*) ".NET Framework"列と".NET 6+"列に同じNuGetパッケージバージョンが記載されています。
具体例
以下に、FlexGridの場合について具体的に説明します。
・2023J v3で提供するNuGetパッケージ名とバージョンは、以下の通りです。
(1).NET Framework用: C1.Win.C1FlexGrid.Ja.4.8.20233.631.nupkg
(2).NET用: C1.Win.FlexGrid.Ja.8.0.20233.631.nupkg
・それぞれのNuGetパッケージには、以下のアセンブリが収録されています。
(1).NET Framework用: C1.Win.C1FlexGrid.4.6.2.dll(*1a)、C1.Win.C1FlexGrid.4.8.dll(*1b)
(2).NET用: C1.Win.FlexGrid.6.dll(*2a)、C1.Win.FlexGrid.8.dll(*2a)
・各アセンブリは、下記バージョンのターゲットフレームワークを指定したときに使用されます。
(1a).NET Framework 4.6.2/4.7/4.7.1/4.7.2
(1b).NET Framework 4.8/4.8.1
(2a).NET 6/7
(2b).NET 8
(NuGetのインストール例)
■C1.Win.C1FlexGrid.Ja.4.8.20233.631.nupkgをインストールする場合
ケース① プロジェクトのターゲットフレームワーク=.NET Framework 4.6.2に設定。
(結果)自動的に、C1.Win.C1FlexGrid.4.6.2.dllが参照設定に追加されます。
ケース② プロジェクトのターゲットフレームワーク=.NET Framework 4.7.2に設定。
(結果)自動的に、C1.Win.C1FlexGrid.4.6.2.dllが参照設定に追加されます。
ケース③ プロジェクトのターゲットフレームワーク=.NET Framework 4.8に設定。
(結果)自動的に、C1.Win.C1FlexGrid.4.8.dllが参照設定に追加されます。
■C1.Win.FlexGrid.Ja.8.0.20233.631.nupkgをインストールする場合
ケース④ プロジェクトのターゲットフレームワーク=.NET 6に設定。
(結果)ソリューションエクスプローラーのパッケージに表示されるNuGetパッケージのバージョンはC1.Win.FlexGrid.Ja.8.0.20233.631ですが、ビルドするとbinフォルダにC1.Win.FlexGrid.6.dllが出力されます。
ケース⑤ プロジェクトのターゲットフレームワーク=.NET 7に設定。
(結果)ソリューションエクスプローラーのパッケージに表示されるNuGetパッケージのバージョンはC1.Win.FlexGrid.Ja.8.0.20233.631ですが、ビルドするとbinフォルダにC1.Win.FlexGrid.6.dllが出力されます。
ケース⑥ プロジェクトのターゲットフレームワーク=.NET 8に設定。
(結果)ソリューションエクスプローラーのパッケージに表示されるNuGetパッケージのバージョンはC1.Win.FlexGrid.Ja.8.0.20233.631で、ビルドするとbinフォルダにC1.Win.FlexGrid.8.dllが出力されます。
単一のNuGetパッケージに複数のアセンブリ(DLL)が収録されており、プロジェクトのターゲットフレームワークのバージョンごとに異なるNuGetパッケージを選択する必要はありません。
なお、ComponentOneでは通常、.NET Framework用/.NET用にそれぞれ以下のような名前のNuGetパッケージを提供しています。
(1).NET Framework用:
"C1.Win.C1FlexGrid.Ja・・・"(コンポーネント名を表す部分に"C1"がつきます)
(2).NET用:
"C1.Win.FlexGrid.Ja・・・" (コンポーネント名を表す部分に"C1"がつきません)
.NET Frameworkプロジェクトでは(1)を、.NETプロジェクトでは(2)をインストールすると、プロジェクトのターゲットフレームワークのバージョンに合わせて、自動的に適切なアセンブリが参照されます。
※ nuget.orgのNuGetパッケージ情報(FlexGridの.NET Framework用NuGetの場合)
【メモ】
コンポーネントによっては、1つのNuGetパッケージに.NET Framework用/.NET用のすべてのアセンブリが収録されているものもあります。
例)C1.Win.FlexChart.Ja.8.0.20233.631.nupkg
C1.Win.FlexChart.4.6.2.dll、C1.Win.FlexChart.4.8.dll、C1.Win.FlexChart.6.dll、C1.Win.FlexChart.8.dllを収録
どのコンポーネントがこれに該当するか(*)を判断するには、ComponentOne利用ガイドの下記項目をご参照下さい。
◇ComponentOne 利用ガイド
移行ガイド > Nuget パッケージ対応一覧 > WinForms
(*) ".NET Framework"列と".NET 6+"列に同じNuGetパッケージバージョンが記載されています。
具体例
以下に、FlexGridの場合について具体的に説明します。
・2023J v3で提供するNuGetパッケージ名とバージョンは、以下の通りです。
(1).NET Framework用: C1.Win.C1FlexGrid.Ja.4.8.20233.631.nupkg
(2).NET用: C1.Win.FlexGrid.Ja.8.0.20233.631.nupkg
・それぞれのNuGetパッケージには、以下のアセンブリが収録されています。
(1).NET Framework用: C1.Win.C1FlexGrid.4.6.2.dll(*1a)、C1.Win.C1FlexGrid.4.8.dll(*1b)
(2).NET用: C1.Win.FlexGrid.6.dll(*2a)、C1.Win.FlexGrid.8.dll(*2a)
・各アセンブリは、下記バージョンのターゲットフレームワークを指定したときに使用されます。
(1a).NET Framework 4.6.2/4.7/4.7.1/4.7.2
(1b).NET Framework 4.8/4.8.1
(2a).NET 6/7
(2b).NET 8
(NuGetのインストール例)
■C1.Win.C1FlexGrid.Ja.4.8.20233.631.nupkgをインストールする場合
ケース① プロジェクトのターゲットフレームワーク=.NET Framework 4.6.2に設定。
(結果)自動的に、C1.Win.C1FlexGrid.4.6.2.dllが参照設定に追加されます。
ケース② プロジェクトのターゲットフレームワーク=.NET Framework 4.7.2に設定。
(結果)自動的に、C1.Win.C1FlexGrid.4.6.2.dllが参照設定に追加されます。
ケース③ プロジェクトのターゲットフレームワーク=.NET Framework 4.8に設定。
(結果)自動的に、C1.Win.C1FlexGrid.4.8.dllが参照設定に追加されます。
■C1.Win.FlexGrid.Ja.8.0.20233.631.nupkgをインストールする場合
ケース④ プロジェクトのターゲットフレームワーク=.NET 6に設定。
(結果)ソリューションエクスプローラーのパッケージに表示されるNuGetパッケージのバージョンはC1.Win.FlexGrid.Ja.8.0.20233.631ですが、ビルドするとbinフォルダにC1.Win.FlexGrid.6.dllが出力されます。
ケース⑤ プロジェクトのターゲットフレームワーク=.NET 7に設定。
(結果)ソリューションエクスプローラーのパッケージに表示されるNuGetパッケージのバージョンはC1.Win.FlexGrid.Ja.8.0.20233.631ですが、ビルドするとbinフォルダにC1.Win.FlexGrid.6.dllが出力されます。
ケース⑥ プロジェクトのターゲットフレームワーク=.NET 8に設定。
(結果)ソリューションエクスプローラーのパッケージに表示されるNuGetパッケージのバージョンはC1.Win.FlexGrid.Ja.8.0.20233.631で、ビルドするとbinフォルダにC1.Win.FlexGrid.8.dllが出力されます。