Я использую в своем проекте nuget, который должен иметь пространство имен с именем ChartJs.Blazor.ChartJS.Common.Time
в версии 0.10.4. По некоторым причинам, это говорит мне, что пространство имен не существует. Я на 100% уверен, что это так, вот почему:
- Я опубликовал этот nuget и протестировал его.
- При загрузке nuget с nuget.org и, осмотрев nupkg-файл, открыв его с помощью 7-zip, я могу найти dll, используемый для nuget, в папке
lib
. Если я скопирую эту dll вне nupkg и сошлюсь на нее напрямую (вместо nuget), все будет отлично работать, и код скомпилируется. - Я также посмотрел на dll (извлеченную выше) с помощью ILSpy и могподтвердите, что пространство имен и его файлы действительно существуют.
Нет абсолютно никаких признаков отсутствия этих файлов в любом месте.
Поскольку я провел некоторое ручное тестирование с тем же пакетомверсия, но содержимое пакета было на самом деле другое, я подозреваю, проблемы с кэшированием. Тем не менее, я уже попробовал несколько вещей, которые помогли мне ранее с подобной проблемой, но ни одна из них не сработала на этот раз:
- Удалить соответствующую папку в
%userprofile%\.nuget\packages
- Удалить все *Папки 1023 * и
obj
(и .vs
). - Удалите все временные файлы (используя встроенный инструмент Windows)
К вашему сведению, ничего интересного в %appdata%/NuGet
.
Кто-нибудь знает, в чем может быть проблема и как ее можно решить? Текущий обходной путь заключается в прямом включении DLL, но это не очень хорошо.
Ps. Установленная версия NuGet 5.1.0.6013
, но я обычно просто работаю с Visual Studio 2019, где интегрирован nuget.
РЕДАКТИРОВАТЬ:
Библиотека, которая используется через nuget, нацелена на netstandard2.0
(стандартная библиотека). Проект-потребитель нацелен на netcoreapp3.0
(ядро asp.net ss-blazor). Это само по себе не должно быть проблемой.