nugetとは
docs.microsoft.com
nugetは、Microsoftがサポートする.NET/.NET Coreのコード共有手段です。ライブラリなどの依存性なども記述できるので、ある機能のライブラリを使いたいときにnugetから取得することで必要な関連ライブラリなども入手することができます。
nupakファイルについて
nugetには、nupakファイルが登録されています。nupakファイルの構造は、zipファイルになっていますので、nupakファイルの拡張子をzipに変更することで内容をみることができます。
libフォルダには目的のライブラリのバイナリファイルが格納されていますが、その他、様々な情報が格納されています。
nugetとからライブラリを適用する
通常、nugetでライブラリを適用する場合、パッケージソース=nuget.orgを指定して適用したいライブラリを参照から探して適用します。
[プレリリースを含める]にチェックすればプレビュー版なども適用できるので便利です。
ライブラリ開発側もアップデートの配布やプレビュー配布なども自分で行わなう手間が省けてよいですね。
nuget.org以外からのライブラリ適用について
しかし、プライベートに配布したい場合はどうしたらいいのでしょうか。
そのためには、nugetに登録するnupakファイルを作成したら、そのファイル自体をプライベート適用してもらいたい人に配布する(例えば、githubのprivateリポジトリや、Teamsのプライベートチャネルなどを使ってもいいでしょう)方法となります。
では、nupakファイルをもらった側はどうしたらVisual Stduioのプロジェクトに組み込むことができるでしょうか。
当然、Visual Studioのプロジェクトでnugetパッケージの管理を開いてもローカルにあるnupakファイルは参照対象にはなりません。
ローカルにあるnupakファイルを参照するためには、Visual Studioでnugetの参照先としてローカルフォルダを追加する必要があります。
パッケージソースを追加
Visual Studioで[ツール]-[NuGetパッケージマネージャー]-[パッケージマネージャー]メニューを選択します。
左上の[+]ボタンをクリックして、追加されたパッケージソースの参照先としてnupakファイルを格納したフォルダを指定します。
あとは、該当のプロジェクトのnugetパッケージ管理で、パッケージソースを「すべて」にしてあげると、参照の中にローカルに保存したnupakファイルも含まれるようになります。