Для управления клиентскими библиотеками в Visual Studio можно использовать пакетный менеджер Microsoft Library Manager или сокращенно Libman.
К примеру, возьмем в любой проект ASP.NET Core в Visual Studio. Допустим, для хранения статических файлов библиотек в проекте определена папка wwwroot/lib. Нажмем на эту папку правой кнопкой мыши:
И затем в контентном меню выберем пункт Add -> Client-Side Library...
После этого нам откроется окно добавления пакетов клиентских библиотек.
Данное окно предоставляет ряд опций для добавления библиотек. Первая опция Provider предоставляет список провайдеров пакетов. Сейчас доступно четыре провайдера:
cdnjs - добавление из репозитория CDNJS
jsDelivr - добавление из репозитория jsDelivr
filesystem - добавление с локального диска
unpkg - добавление из репозитория unpkg
Второе поле - поле Library предназначено для ввода названия библиотеки. При вводе нескольких символов появится список подходящих результатов, из которого можно выбрать нужную библиотеку.
Либо можно полностью ввести название пакета в формате [название]@[версия].
Третья опция имеет два альтернативных варианта:
Include all library files указывает, что добавляться будут все файлы. И в поле ниже мы можем увидеть список всех добавляемых файлов
Choose specific files позволяет выбрать только нужные нам файлы библиотеки
Последнее поле - поле Target Location позволяет указать место добавления файлов библиотеки.
После нажатия на кнопку Install выбранная библиотека будет добавлена в проект.
После первого использования Libman в проекте появится новый файл libman.json.
Если мы откроем файл, то там будет содержимое типа следующего:
{ "version": "1.0", "defaultProvider": "cdnjs", "libraries": [ { "library": "react@18.1.0", "destination": "wwwroot/lib/react/" } ] }
Узел libraries содержит набор добавленных библиотек. Если мы хотим удалить библиотеку, достаточно удалить узел нужной библиотеки из libraries и сохранить файл. И библиотека будет удалена из проекта.
Аналогично мы можем изменить даные библиотеки, например, изменить версию или расположения, и затем после сохранения файла все изменения будут применены к проекту.
Стоит отметить, что Libman не управляет теми пакетами, которые добавляются в проект по умолчанию (например, в некоторые типы проектов ASP.NET Core по умолчанию добавляются библиотеки jquery и bootstrap).