Создание ссылки с помощью NuGet в Azure Devops - PullRequest
0 голосов
/ 08 мая 2020

Я создаю пакет NuGet и публикую sh его в фиде в Azure Devops.

При его использовании зависимая dll не включалась, она не существует как пакет NuGet, поэтому Я не могу это исправить.

Я изменил csproj и добавил его, как описано здесь .

Теперь я получаю dll, но не добавлен в качестве ссылки . Можно ли это исправить в Azure Devops?

1 Ответ

1 голос
/ 11 мая 2020

Поскольку вы упаковали зависимую dll в пакет NuGet. Когда пакет NuGet используется вашим проектом, зависимая dll будет существовать в ..\packages\{yourNugetPackage}\lib\{targetFramework}\dependent.dll.

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

<ItemGroup>
    <Reference Include="DependentDll">
          <HintPath>..\packages\yourNugetPackage.1.0.0\lib\netcoreapp2.0\dependent.dll</HintPath>
    </Reference>
</ItemGroup>

Другой возможный обходной путь заключается в том, что вы можете попробовать создать другой пакет Nuget для этой зависимой dll и опубликовать sh его в ленте в azure DevOps.

Затем добавьте dependency к этому пакету в исходном проекте пакета Nuget и повторно публикуйте sh для подачи в Azure Devops. Чтобы зависимой dll можно было управлять с помощью исходного пакета Nuget. См. Ниже простой пример.

<package xmlns="http://schemas.microsoft.com/packaging/2010/07/nuspec.xsd">
    <metadata>
        <id>sample</id>
        <version>1.0.0</version>
        <authors>Microsoft</authors>
        <dependencies>
            <dependency id="dependentDllPackage" version="1.0.0" />
         </dependencies>
    </metadata>
</package>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...