Ответ 1
Переадресация привязок - это концепция платформы .NET, перенаправления привязки в .NET Standard и .NET Core отсутствуют.
Однако приложение (реальное приложение .NET Framework или .NET Core) должно разрешать используемые файлы. В .NET Core это делается путем создания файла deps.json
на основе входных данных для сборки, а приложение .NET Framework использует перенаправления привязки.
Если требуется перенаправление привязки, их необходимо добавить в приложение (или библиотеку).NET Framework, которое использовало стандартную библиотеку .NET.
Эти перенаправления привязки можно настроить так, чтобы они автоматически генерировались во время сборки на основе сборок, использованных во время компиляции, см. документацию об автоматических перенаправлениях привязки. При использовании NuGet нового стиля PackageReference
использования пакетов NuGet это делается автоматически. Поскольку правильная настройка зависит от типа проекта, см. объявление Проблемы с .NET Standard 2.0 с .NET Framework & NuGet для подробных описаний.
Самый простой способ убедиться, что используются правильные перенаправления привязки, - убедиться, что приложение или библиотека .NET Framework задает эти свойства (внутри csproj/vbproj. Второе не требуется для проектов, генерирующих исполняемые файлы .exe, но необходимо для модуля тестовые проекты):
<PropertyGroup>
<AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects>
<GenerateBindingRedirectsOutputType>true</GenerateBindingRedirectsOutputType>
</PropertyGroup>