Подтвердить что ты не робот

Установка Nugets в visual studio 2015

Я пытаюсь установить nuget Microsoft.VisualStudio.QualityTools.UnitTestFramework в Visual Studio 2015 в простой проект и получил это сообщение:

Не удалось установить пакет "Microsoft.VisualStudio.QualityTools.UnitTestFramework 10.0.30319.1". Вы пытаетесь установить этот пакет в проект, который предназначен для ".NETFramework, Version = v4.5.2", но пакет не содержит ссылок на сборки или файлов содержимого, которые совместимы с этой инфраструктурой. Для получения дополнительной информации свяжитесь с автором пакета.

Но, когда я пытаюсь установить этот пакет в Visual Studio 2013 в том же проекте, это работа.

Как установить этот nuget в Visual Studio 2015?

4b9b3361

Ответ 1

Время прошло, но это происходит со мной, и я обнаружил, что это не имеет никакого отношения к версии фреймворка. Важным текстом сообщения об ошибке является: "... но пакет не содержит ссылок на сборки или файлов содержимого...".

Действительно, у моего пакета нет видимого содержимого для Nuget: у него есть обычная папка с родными библиотеками сторонних разработчиков и Install.ps1, которая добавляет событие post build с помощью команды Xcopy.

Как простой поворот, просто поместите фиктивный файл в папку содержимого содержимого или любой другой фиктивный контент в lib, пустой файл node (не пробовал) и т.д.

EDIT 29/5/2017

Я вижу, что этот ответ полезен другим, и именно поэтому я собираюсь подробнее рассказать о нем.

Как я уже сказал, проблема в том, что Nuget не видит, что в пакете есть какой-либо контент, но может иметь две причины:

  • Пакет действительно не имеет видимого контента, потому что он перемещает содержимое с помощью script и т.д. (как это было в моем случае), а затем необходимо создать некоторый фиктивный контент в качестве поворота.

  • Ошибка в спецификации пакета, который должен иметь контент (как в случае с Евгением Набоковым в комментариях), а затем вы должны исправить эту спецификацию, чтобы поместить вещи на место.

Извините за мой плохой английский.

Ответ 2

В сообщении об ошибке говорится, что для версии фреймворка нет версии nuget.

В VS2013 Вы, вероятно, создаете проект в версии .NET Framework версии 4.5.0 или 4.0.0.

Вы пытались изменить .Net версию вашего проекта на 4.5.2?

Ответ 3

У меня возникла эта проблема при создании пакетов nuget в TeamCity, публикации их в локальном artifactory и затем попытке использовать эти пакеты в других проектах.

Чтобы избежать этой проблемы - в TeamCity, BuildSteps == > NuGet Pack == > Параметры пакета == > Файлы спецификаций вы должны выбрать файл .csproj по файлу nuspec и параметр галочки "Предпочитаете файлы проекта для .nuspec"

Пакет, который будет построен таким образом, будет в порядке, чтобы импортировать и больше никаких жалоб от VS.

Ответ 4

Я получил это, и это не имело смысла, потому что я уже использовал его без проблем в проекте Framework 4.6, и ошибка сказала мне, что он не будет работать на фреймворк 4.6, который, как я знал, был неверным.

В конце концов я решил это, сделав еще один тестовый проект, скопировав файлы cs и т.д. из моего старого тестового проекта, а затем установив UnitTestFramework через NuGet. Он отлично работает.

Итак, что-то случается, что только Microsoft может решить, я бы догадался, но начать снова, кажется, исправить его.

Ответ 5

Это может произойти, если стандарт .NET решения и соответствующий пакет nuget не совпадают. Пожалуйста, проверьте эту ссылку: https://blogs.msdn.microsoft.com/dotnet/2016/09/26/introducing-net-standard/ Когда вы прокручиваете вниз, есть заголовок с именем: Whats new в .NET Standard 2.0? Под этой рубрикой есть таблица. У вас есть как стандартная, так и стандартная версия. Я предпочитаю .NET 1.4 и .NET Framework 4.6.1. Создавая стандарт .NET, Microsoft кодирует требование наличия совместимых API-интерфейсов на всех платформах .NET. Похоже, что после переноса ваших решений на этот уровень совместимости, "несовместимости" или открытия колеса снова после каждого обновления будет память о прошлом...

Ответ 6

Кажется, что создание "Unit Test Project" вместо "Class Library" решает проблему. Я сражался с "Библиотекой классов" без везения, но, удалив этот проект, создание нового из шаблона "Unit Test Project" стало с Microsoft.VisualStudio.QualityTools.UnitTestFramework версии 10.0. 0.0.

Ответ 7

Я обнаружил, что DynamicInterop.0.8.1.nupkg имеет DLL файл в папке lib\netstandard1.2. Я просто изменил имя папки на lib\net40, и пакет установил ok (I.m, используя VS2013). Также:.nupkg - это только .zip файл, поэтому любой zip-инструмент позволяет вам манипулировать содержимым.