В одном из моих проектов я использую пакет AutoFixture.AutoMoq, который зависит от пакета Moq.
<!-- project1.csproj -->
<PackageReference Include="AutoFixture.AutoMoq">
<Version>4.11.0</Version>
</PackageReference>
а в другом проекте я использую пакет Moq напрямую, т.е.
<!-- project2.csproj -->
<PackageReference Include="Moq">
<Version>4.13.1</Version>
</PackageReference>
Проблема в том, что Visual Studio/MSBuild/Nuget при разрешении версии пакета всегда выбирает минимальную зависимость, т.е. Moq 4.1.1308.2120, но я хотел бы использовать последнюю версию Moq 4.13.1 .
Как сообщить Visual Studio/nuget явно использовать запрошенную версию?
ОБНОВИТЬ:
Когда я пытаюсь установить для параметра Поведение зависимостей значение Самое высокое в пользовательском интерфейсе Nuget, я получаю сообщение о том, что оно не применяется к проектам, использующим подход PackageReference: < a href="https://i.stack.imgur.com/09i59.png" rel="nofollow noreferrer">
PackageReference
, и я уже сообщил об этом соответствующему персоналу. Вы можете проверить это и добавить любую полезную информацию по этой ссылке. Чтобы использовать последнюю зависимость Moq на данный момент, вы должны установить последнюю версиюMoq
, а затемAutoFixture.AutoMoq
. - person LoLance   schedule 31.03.2020