Это просто решить. У вас есть 2 варианта:
A) Упакуйте и опубликуйте все свои проекты как пакеты Nuget:
Вы просто добавляете свои зависимости как ProjectReference
в свои основные проекты. И продолжайте разработку, используя ссылки на проекты. Также необходимо упаковать все проекты зависимостей. Если вы хотите опубликовать свои пакеты, используя ту же версию, просто запустите:
dotnet pack -p:PackageVersion=2.1.0
также может добавлять любые другие pack
аргументы.
Поскольку во время pack
все ProjectReference
будут преобразованы в зависимости пакета. И номер version
распространяется на весь пакет.
В этом случае исходный основной проект и все его зависимости будут упакованы в Nuget. Теперь вы должны опубликовать ВСЕ. И когда вы захотите установить свой пакет Nuget, он также установит все его зависимости с той же указанной версией.
B) Упакуйте все выходные библиотеки DLL в один пакет Nuget:
Вы можете опубликовать только один проект как пакет Nuget и упаковать все остальные библиотеки DLL в этот пакет. Сначала подавите pack
, чтобы преобразовать зависимость от проекта к пакету. Найдите свой ProjectReference
и добавьте к нему PrivateAssets="All"
. Должно выглядеть так:
<ProjectReference Include="yourproj.csproj" PrivateAssets="All" />
И добавьте следующий раздел в свой файл .csproj
(в проект, который должен быть упакован), чтобы упаковать DLL-зависимости, измените имя DLL и версия платформы в <PackagePath>
.
<ItemGroup>
<_PackageFiles Include="$(OutputPath)\yourproj.dll">
<BuildAction>None</BuildAction>
<PackagePath>lib\net5.0</PackagePath>
</_PackageFiles>
</ItemGroup>
person
Major
schedule
10.10.2020