При установке пакета NuGet используется конкретная версия сборки в файлах csproj

Мы используем NuGet в наших проектах, у нас возникают проблемы с ссылками csproj на пакеты NuGet.

Сценарий 1

Когда мы устанавливаем несколько пакетов для решения в системе Dev с указанными ниже деталями,

Windows 7, x64 bitVisual Studio 2012NuGet 2.8PTC Integrity для контроля версий

Он добавляет конкретную версию к файлам csproj. как указано ниже, (фрагмент кода),

<Reference Include="ABCD.XYZ, Version=1.0.6045.25123, Culture=neutral, processorArchitecture=AMD64">
<HintPath>..\packages\ABCD.XYZ.2.0.0.0\lib\net45\ABCD.XYZ.dll</HintPath>
<Private>True</Private>
</Reference>

Сценарий 2

При добавлении того же пакета на сервер сборки с указанными ниже данными

Windows Server 2008 R2Visual Studio 2012NuGet 2.8PTC Integrity для контроля версий

Это добавляет ниже детали,

<Reference Include="ABCD.XYZ">
  <HintPath>..\packages\ABCD.XYZ.2.0.0.0\lib\net45\ABCD.XYZ.dll</HintPath>
  <Private>True</Private>
</Reference>

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

<SpecificVersion>False</SpecificVersion>

Мой сценарий заключается в том, что наша сборка увеличивает версию сборки ABCD.XYZ с каждой сборкой. Поэтому проект, на который есть ссылка выше, терпит неудачу, так как не может найти версию выше (NuGet добавляет строгое имя в ссылке)

Я пробовал различные конфигурации сборки, такие как Debug, Release, x64, Any CPU и т. Д.

Обновление csproj вручную, не такой гибкий вариант

Итак, вот мои несколько вопросов,

Как эта конкретная версия или строгое имя добавляется в csproj?Есть ли возможность добавить / игнорировать конкретную версию?Что требуется для добавления ссылки, выделенной в сценарии 2?

Пожалуйста, дайте нам знать, если требуются дополнительные данные.

Ответы на вопрос(0)

Ваш ответ на вопрос