「[[Open棟梁 wiki>https://opentouryo.osscons.jp]]」は、「[[Open棟梁Project>https://github.com/OpenTouryoProject/]]」,「[[OSSコンソーシアム .NET開発基盤部会>https://www.osscons.jp/dotNetDevelopmentInfrastructure/]]」によって運営されています。 -[[戻る>NuGet対応]] *目次 [#h1b82de1] #contents *概要 [#v6adba39] NuGetの依存関係パッケージのポリシーについてまとめておく。 *内容 [#te23842d] **[[ベースクラス1]](ライブラリ・フレームワーク) [#ye0ca7cd] [[ベースクラス1]](ライブラリ・フレームワーク)で必要となる~ 依存関係パッケージは、nuspecファイルのdependenciesに記述する。 -全ての依存関係パッケージを記述しておく。 -機能によって使用しない依存関係パッケージは、~ エンドユーザの判断で、手動で削除できるようにする。 **[[ベースクラス2]](カスタマイズ可能レイヤ) [#q2ca180b] -[[ベースクラス2]](カスタマイズ可能レイヤ)で、~ 上記の[[ベースクラス1(ライブラリ・フレームワーク)>#ye0ca7cd]]を依存関係パッケージに追加した場合、~ 必要(依存関係パッケージの利用確度)に応じて、依存関係パッケージを削除する。 -例えば、[[ベースクラス2]](カスタマイズ可能レイヤ)に、各データ・プロバイダに対応した~ 複数の「データアクセス・ライブラリ」の依存関係パッケージを追加した場合、~ 多くのプロジェクトでは、データ・プロバイダが1つに絞られるため、~ [[ベースクラス2]](カスタマイズ可能レイヤ)からは、依存関係を削除しておき、~ 利用する依存関係パッケージを「[[プロジェクト・テンプレート側で判断・決定して追加する>#ac78fb6c]]」。 **プロジェクト・テンプレート [#oedca070] ***プロジェクト・テンプレート側で追加する。 [#ac78fb6c] -最終的に、プロジェクト・テンプレート側で、依存関係パッケージの利用を判断・決定する。 -[[前述の例>#q2ca180b]]では、~ データ・プロバイダ(データアクセス・ライブラリの依存関係パッケージ)を、~ プロジェクト・テンプレート側で判断・決定して依存関係パッケージとして追加する。