Ответы с форумов MSDN

Visual Studio - Сборка NuGet-пакета для проекта

Date: 16.02.2021 16:20:20

При использовании современного формата проекта (VS 2017+ или .NET Core SDK) ничего особенного делать не нужно. Вы выбираете несколько целевых платформ, устанавливаете GeneratePackageOnBuild, и тогда при сборке генерируется пакет с несколькими целевыми платформами. Файл проекта должен выглядеть как-то так:

<Project Sdk="Microsoft.NET.Sdk">

  <PropertyGroup>
    <TargetFrameworks>netstandard2.0;net45</TargetFrameworks>    
    <GeneratePackageOnBuild>true</GeneratePackageOnBuild>
    
  </PropertyGroup>
</Project>
При старом типе проекта или если это вовсе не msbuild, да, нужно вручную компоновать dll-ки в несколько подкаталогов в /lib, и потом паковать это командной строкой.

Message 72

Date: 17.02.2021 5:58:46

Для связок зависимостей также можно ввести логическое управление на основе платформы:

<PropertyGroup Condition="'$(TargetFramework)'=='netstandard2.0'">
    <PackageReference Include="..." Version="..." />
</PropertyGroup>

Что касается System.Text.Encoding.CodePages, System.IO.Ports, насколько я понимаю, эти пакеты в net framework не нужны, так как и кодировки, и работа с портами встроены в саму стандартную библиотеку. 

>Я так понимаю, это только для 2017 студии, для 2019 уже не актуально?

То, что я написал, актуально и для VS 2017, и для VS2019.


Автор: VadimTagil

Главная страница - Список тем - Репозиторий на GitHub