Пакет NuGet для. NET System.Drawing.Common 4.5.1 содержит неверную версию сборок - PullRequest
0 голосов
/ 23 февраля 2020

Я пытаюсь использовать System.Drawing.Common в проекте в зависимости от (устаревшего). NET Стандарт 2.0. Если я пытаюсь нацелиться на Стандарт 2.1, у меня возникают проблемы совместимости с одной из моих зависимостей, pytho nnet, поэтому мне нужно придерживаться версии 2.0, пока pytho nnet не получит официальную поддержку. NET Standard , В настоящее время pytho nnet может импортировать мои сборки, если они предназначены. NET Standard 2.0, но не для. NET Standard 2.1.

Для. NET Standard 2.0 совместимость, самая последняя Доступен пакет System.Drawing.Common 4.5.1 . После установки этого решения моё решение строится, но во время выполнения я получаю сообщение об ошибке

System.PlatformNotSupportedException: 'System.Drawing is not supported on this platform.'

Согласно этой странице , эта версия пакета System.Drawing.Common должна быть нацелена. NET Стандарт 2.0. Я обнаружил, что пакет NuGet содержит несколько System.Drawing.Common.dll файлов для разных платформ, но версия файла 4.6.2.

NuGet package containing mismatched version of assembly

Я что-то упустил или это ошибка в пакете NuGet? Похоже, что это было бы так.

1 Ответ

1 голос
/ 23 февраля 2020

Номера версий не проблема. Нет никаких требований или гарантий, что какая-либо из версий сборки, версии файла или версии пакета будет соответствовать.

Исключение PlatformNotSupportedException будет вызвано какой-то другой проблемой, хотя, просматривая пакет, я не совсем уверен, что именно. Многое зависит от того, как ваш проект действительно построен и запущен.

...