Я начал получать от нового проекта .Net 4.6.2 Unit Test. Это было действительно странно, поэтому я решил воспроизвести упрощенный проект, который я выложил на Github и прикрепил. Разархивируйте и запустите восстановление Nuget в VS. Есть 2 коммита. В первом случае произошел сбой, а во втором он был исправлен после удаления "Microsoft.Extensions.Logging.Abstractions" и Microsoft.Extensions.Logging NuGet. Добавление этого пакета обратно приведет к сбою тестов.
Пожалуйста, помогите мне разобраться в этом странном вопросе. Есть ли что-то для этого пакета из .Net Standard? System.Net.Http
поступает из .NET Core + Platform Extensions, согласно apisofnet, но я м, не используя .Net Core.
Что я могу сделать, продолжая использовать System.Net.Http
версии 4.0.0.0? Выходные данные сборки содержат: единую первичную ссылку «System.Net.Http, версия = 4.2.0.0, культура = нейтральная, PublicKeyToken = b03f5f7f11d50a3a».
Примечание об обновлении: я выполнил то же самое упражнение по удалению пакетов Nuget из моей первой фиксации, и тесты не прошли, так что все это может быть отвлекающим маневром. Скриншоты ниже показывают, что мне все равно удалось один раз.
Обновление 2: я воспроизвел его шаг за шагом с коммитами: https://github.com/aligneddev/UseSystemNetHttpReferencing/commits/reproduce. Я удалил все пакеты, затем после удаления последнего Microsoft.Extensions.DependencyInjection.Abstractions - system.Net.http отсутствует ошибка сборки. Затем я добавил ссылку с ReSharper, и модульный тест проходит!
Последнее обновление: переход на .Net 4.5.2 также решает проблему. Я действительно не хочу этого делать :-).
assemblyBinding
сSystem.Net.Http
4.2 на 4.0 ? - person Artyom   schedule 08.12.2017