У меня есть проект, созданный на основе .NET Framework 4.6.2.Одна из его зависимостей - сборка, созданная на основе .NET Standard 2.0.
Раньше она работала просто отлично, на моем старом компьютере, но теперь у меня есть новая система разработки, которую я настраиваю, и когда я пытаюсьчтобы запустить сборку с той же версией тех же инструментов, я получаю несколько десятков ошибок о том, что Netstandard DLL ссылается на несколько небольших сборок с одним пространством имен, популярных в .NET Core.Например:
Первичная ссылка "Foo" не может быть разрешена, поскольку она имеет косвенную зависимость от сборки каркаса "netstandard, Version = 2.0.0.0, Culture = нейтральный, PublicKeyToken = cc7b13ffcd2ddd51", котораяне может быть решена в целевой структуре в настоящее время.».NETFramework, Version = v4.6.2" .Чтобы решить эту проблему, удалите ссылку «Foo» или перенаправьте приложение на версию платформы, которая содержит «netstandard, Version = 2.0.0.0, Culture = нейтральный, PublicKeyToken = cc7b13ffcd2ddd51».(MSB3268)
Если я явно добавлю ссылку проекта на Netstandard 2.0 из GAC, то ошибка будет выглядеть следующим образом:
Первичная ссылка "netstandard", которая является структуройсборка, не может быть решена в текущей целевой структуре.».NETFramework, Version = v4.6.2" .Чтобы решить эту проблему, удалите ссылку «netstandard» или перенастройте свое приложение на версию платформы, которая содержит «netstandard».(MSB3267)
Опять же, эта сборка (и сборка все еще выполняется) без ошибок на старой системе, и я пытаюсь собрать проект без каких-либо изменений в той же IDE и компиляторе.Поэтому я могу только предположить, что мне не хватает чего-то, что должно быть установлено в моей системе разработки, но я не совсем уверен, что это такое.
Кто-нибудь сталкивался с этим раньше?Здесь я нашел несколько других вопросов о попытке ссылки на сборку Netstandard из проекта C # .NET Framework, и, очевидно, это сложно из-за некоторых деталей, связанных с Roslyn, но на самом деле я использую язык Boo в своем проекте NET Framework,так что ни один из этих вопросов не имеет особого значения, плюс раньше он отлично работал.
Такое ощущение, что у него должен быть действительно простой ответ, если я просто знаю, какие детали я пропускаю ...