Создание пакета NuGet. Требуется разъяснение о включенных зависимостях

Я впервые экспериментирую с созданием пакета NuGet, и меня немного смущает одна вещь:

Если я ссылаюсь на другие внешние пакеты NuGet (например, Ninject, Automapper и т. д.) внутри проекта, который я использую для создания собственного пользовательского пакета NuGet, как мне обрабатывать эти зависимости, когда мой пакет в конечном итоге будет использован/установлен? в реальном проекте?

Из моих первоначальных экспериментов сгенерированный пакет NuGet обнаруживает эти другие зависимости (Ninject, Automapper и т. д.) и отображает их в разделе Зависимости в пользовательском интерфейсе NuGet. Затем, когда я нажимаю «Установить», он фактически отключается и устанавливает Ninject/Automapper с Nuget.org.

Вот тут я в замешательстве. Разве к тому времени сборки Ninject/Automapper не являются частью моей созданной сборки пакета nuget? Разве потребитель моего пользовательского пакета NuGet не должен заботиться/видеть, что они зависят от Ninject/Automapper?

Дополнительная справочная информация

Вот шаги, которые я предпринял для создания собственного пакета NuGet:

  1. Создал файл .nuspec, выполнив следующее (в той же папке, где находится файл MyProject.csproj):

    nuget.exe spec
    
  2. Создал фактический файл пакета (.nupkg), выполнив:

    nuget.exe pack MyProject.csproj
    

person Jiveman    schedule 17.05.2016    source источник


Ответы (1)


Вы выполнили правильный набор шагов для создания пакета. Ваш пакет имеет зависимости, которые перечислены в файле nuspec после создания пакета. В интересах потребителя вашего пакета понять, каковы зависимости. Кроме того, вы также можете указать, какой диапазон версий является допустимой зависимостью. Это полезно, если потребитель вашего пакета уже установил требуемую зависимость, которая может быть выше, чем минимально необходимая для вашего пакета.

person Slobo80    schedule 23.05.2016
comment
Спасибо, кажется, я и сам это понял. Я зацикливался на основах зависимостей сборки. - person Jiveman; 26.05.2016