2013-05-28 2 views
0

Я видел, что NuGet.exe содержит флаг ExcludeVersion при установке пакетов. У нас есть решения, которые уже содержат большое количество ссылок. Например:ExcludeVersion для существующих ссылок NuGet

<Reference Include="Microsoft.SqlServer.Smo, Version=11.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91, processorArchitecture=MSIL"> 
    <Private>True</Private> 
    <HintPath>..\packages\Microsoft.SqlServer.Scripting.11.0.2100.61\lib\Microsoft.SqlServer.Smo.dll</HintPath> 
</Reference> 

Есть простой способ обновить все эти существующие ссылки не включать номер версии (11.0.2100.61 выше) в пути к папке? Первоначально эти ссылки были добавлены с помощью диспетчера пакетов в Visual Studio, но я не вижу никакого способа указывать, чтобы не включать номер версии.

+0

как FYI: http://danhaywood.com/2012/04/04/updating-visual-studio-project-references-from-nuget-packages-config-2/ – granadaCoder

ответ

0

Короткий ответ.

Нет, нет.

Смотреть это: https://nuget.codeplex.com/workitem/1522

Я думаю, вы должны:

  1. Запускаем VS Tool: Uninstall-пакет Microsoft.SqlServer.Smo

  2. Запустите командную строку NuGet. .... с флагом ExcludeVersion.

    C: \ WhereeverYouPutThis \ NuGet.exe установить Microsoft.SqlServer.Smo -ConfigFile "..nuget \ nuget.config" -ExcludeVersion

  3. Re-сделать ваши ссылки.

Да, это воняет.

Мой файл nuget.config выглядит так, FYI.

<?xml version="1.0" encoding="utf-8"?> 
<configuration> 
    <config> 
    <add key="repositoryPath" value="..\MyPackages" /> 
    </config> 
</configuration> 
+0

пальцы скрещены делать это в когда-нибудь возможно более приятный способ –

Смежные вопросы