Sdílet prostřednictvím


Klientské knihovny .NET

Azure DevOps Services | Azure DevOps Server 2022 – Azure DevOps Server 2019

Klientské knihovny jsou k dispozici vývojářům .NET, kteří vytvářejí aplikace a služby pro Windows, které se integrují s Azure DevOps. Klientské knihovny se integrují se sledováním pracovních položek, správou verzí, sestavením a dalšími službami. Tyto balíčky nahrazují tradiční instalační program OM klienta TFS a usnadňují získání a redistribuci knihoven potřebných vaší aplikací nebo službou.

Tip

Najděte odpovídající klientskou třídu a metodu rozhraní API .NET pomocí ukázek klientské knihovny .NET a referenčních informací k rozhraní AZURE DevOps API.

Diagram závislostí

Diagram závislostí znázorňuje vztah mezi Services.Client, Services.InteractiveClient a TeamFoundationServer.Client.

Funkce

  • Stažení z NuGet.org a snadné importování do projektů sady Visual Studio
  • Knihovny jsou licencované k redistribuci ve vašich aplikacích a službách (zobrazení licence).
  • Přístup k rozhraním API tradičního klientského objektového modelu i rozhraní REST API

Poznámka:

Klienti založené na REST pracují jenom s Azure DevOps a TFS 2015 nebo novějším. Další informace o rozšíření a integraci s Azure DevOps pomocí klientských knihoven najdete v tématu Rozšíření Team Foundation.

Tabulka mapování verzí balíčku a Azure DevOps

Verze balíčku Verze Azure DevOps
16.205.x versions >= Azure DevOps Server 2022
16.170.x versions >= Azure DevOps Server 2020
16.153.x versions >= Azure DevOps Server 2019 Update 1
16.143.x versions >= Azure DevOps Server 2019
15.131.x versions >= TFS 2018 Update 1
15.112.x versions >= TFS 2017 Update 1
14.102.x versions >= TFS 2015 Update 3
14.95.x versions >= TFS 2015 Update 2
14.89.x versions >= TFS 2015 Update 1
14.83.x versions >= TFS 2015

Nejnovější verze Preview najdete v galerii balíčků NuGet.

Balíčky REST

Balíčky a popis Binární soubory
Microsoft.VisualStudio.Services.Client
Poskytuje přístup ke sdíleným službám platformy prostřednictvím veřejných rozhraní REST API, jako jsou organizace, profil, identita, zabezpečení a další.
Microsoft.VisualStudio.Services.WebApi.dll, , Microsoft.VisualStudio.Services.Common.dllMicrosoft.TeamFoundation.Common.dll
Microsoft.TeamFoundationServer.Client
Poskytuje přístup ke správě verzí, sledování pracovních položek, sestavení a dalším prostřednictvím veřejných rozhraní REST API.
Microsoft.TeamFoundation.Build2.WebApi.dll, Microsoft.TeamFoundation.Core.WebApi.dll, Microsoft.TeamFoundation.WorkItemTracking.Process.WebApi.dll, Microsoft.TeamFoundation.SourceControl.WebApi.dll, Microsoft.TeamFoundation.TestManagement.WebApi.dlla tak dále.
Microsoft.VisualStudio.Services.InteractiveClient
Podporuje aplikace, které vyžadují interaktivní přihlášení uživatelem.
Microsoft.VisualStudio.Services.Client.Interactive.dll
Microsoft.VisualStudio.Services.Release.Client
Poskytuje přístup ke službě Release Service prostřednictvím veřejných rozhraní REST API.
Microsoft.VisualStudio.Services.ReleaseManagement.WebApi.dll
Microsoft.TeamFoundation.DistributedTask.Common.Contracts
Poskytuje modely používané pro přístup ke službě distribuovaných úloh prostřednictvím veřejných rozhraní REST API.
Microsoft.TeamFoundation.DistributedTask.Common.Contracts.dll
Microsoft.TeamFoundation.DistributedTask.WebApi
Poskytuje přístup k distribuované službě úloh prostřednictvím veřejných rozhraní REST API.
Microsoft.TeamFoundation.DistributedTask.WebApi.dll
Microsoft.VisualStudio.Services.ServiceHooks.WebApi
Poskytuje přístup ke službě Service Hooks Service prostřednictvím veřejných rozhraní REST API.
Microsoft.VisualStudio.Services.ServiceHooks.WebApi.dll
Microsoft.VisualStudio.Services.Gallery.WebApi
Poskytuje přístup ke službě galerie prostřednictvím veřejných rozhraní REST API.
Microsoft.VisualStudio.Services.Gallery.WebApi.dll
Microsoft.VisualStudio.Services.Notifications.WebApi
Poskytuje přístup ke službě Oznámení prostřednictvím veřejných rozhraní REST API.
Microsoft.VisualStudio.Services.Notifications.WebApi.dll
Microsoft.VisualStudio.Services.ExtensionManagement.WebApi
Poskytuje přístup ke službě Správa rozšíření prostřednictvím veřejných rozhraní REST API.
Microsoft.VisualStudio.Services.ExtensionManagement.WebApi.dll
Microsoft.VisualStudio.Services.MemberEntitlementManagement.WebApi
Poskytuje přístup ke službě Správa nároků člena prostřednictvím veřejných rozhraní REST API.
Microsoft.VisualStudio.Services.MemberEntitlementManagement.WebApi.dll
Microsoft.VisualStudio.Services.ServiceEndpoints.WebApi
Poskytuje přístup ke koncovým bodům služby prostřednictvím veřejných rozhraní REST API.
Microsoft.VisualStudio.Services.ServiceEndpoints.WebApi.dll
Microsoft.VisualStudio.Services.Search.Client
Poskytuje přístup k vyhledávací službě prostřednictvím veřejných rozhraní REST API.
Microsoft.VisualStudio.Services.Search.Shared.WebApi.dll, Microsoft.VisualStudio.Services.Search.WebApi.dll
Microsoft.TeamFoundation.PublishTestResults
Tuto úlohu můžete použít k publikování výsledků testů a nahrání testovacích příloh v Azure DevOps. Tento balíček podporuje následující formáty výsledků: 1. JUnit - publikování testů z projektů Junit, 2. NUnit - publikování testů z projektů Nunit, 3. VSTest – publikování testů z projektů sady Visual Studio, 4. Xunit – publikování testů z projektů Xunit
Microsoft.TeamFoundation.TestClient.PublishTestResults.dll
Microsoft.VisualStudio.Services.Audit.WebApi
Poskytuje přístup ke službě auditování prostřednictvím veřejných rozhraní REST API.
Microsoft.VisualStudio.Services.Audit.WebApi.dll
Microsoft.Azure.Pipelines.Policy.Client
Poskytuje přístup ke schválení, kontrolám a autorizaci kanálů prostřednictvím veřejných rozhraní REST API.
Microsoft.Azure.Pipelines.Policy.Client.dll

Tip

Pokud máte existující aplikaci nebo službu systému Windows, která používá objektový model klienta TFS, použijte Microsoft.TeamFoundationServer.ExtendedClient.

Balíček Soap

Balíček a popis Binární soubory
Microsoft.TeamFoundationServer.ExtendedClient
Pracujte se správou verzí, pracovními položkami a sestavováním a dalšími prostředky z klientské aplikace. Tento balíček nepodporuje OM klienta Net Standard. Tento balíček použijte jenom v případě, že naše rozhraní REST API nenabízí funkce, které potřebujete (například vytváření pracovních prostorů v TFVC).
Microsoft.TeamFoundation.Build.Client.dll, Microsoft.TeamFoundation.DeleteTeamProject.dll, Microsoft.TeamFoundation.Diff.dll, Microsoft.TeamFoundation.Git.Client.dll, Microsoft.TeamFoundation.SharePointReporting.Integration.dlla tak dále.

Instalace

Nainstalujte z příkazového řádku správce balíčků NuGet:

PM> Install-Package Microsoft.TeamFoundationServer.ExtendedClient

Propojit

Pokud chcete vytvořit ověřené připojení k Azure DevOps, získejte httpClient pro službu, se kterou chcete pracovat, a pak volejte metody pro tuto službu.

Podívejte se na následující příklady:

using Microsoft.VisualStudio.Services.Common;
using Microsoft.VisualStudio.Services.Client;
using Microsoft.TeamFoundation.SourceControl.WebApi;
using Microsoft.VisualStudio.Services.WebApi;

const String c_collectionUri = "https://dev.azure.com/fabrikam";
const String c_projectName = "MyGreatProject";
const String c_repoName = "MyRepo";

Uri orgUrl = new Uri(c_collectionUri);

// Connect to Azure DevOps Services
VssConnection connection = new VssConnection(orgUrl, new VssBasicCredential(string.Empty, personalAccessToken));

// Get a GitHttpClient to talk to the Git endpoints
using (GitHttpClient gitClient = connection.GetClient<GitHttpClient>())
{
    // Get data about a specific repository
    var repo = gitClient.GetRepositoryAsync(c_projectName, c_repoName).Result;
}

Cesty ověřování, které vytvářejí interaktivní dialog, nejsou dostupné ve verzi .NET Standard klientských knihoven .NET. Pokud používáte verzi .NET Standard, zadejte přihlašovací údaje explicitněji k ověření, například v následujícím příkladu.

using System;
using Microsoft.TeamFoundation.SourceControl.WebApi;
using Microsoft.VisualStudio.Services.Common;
using Microsoft.VisualStudio.Services.WebApi;

namespace ConsoleApp1
{
    class Program
    {
        const string collectionUri = "https://dev.azure.com/fabrikam";
        const string projectName = "MyGreatProject";
        const string repoName = "MyRepo";
        const string pat = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx";

        static void Main(string[] args)
        {
            var creds = new VssBasicCredential(string.Empty, pat);
            
            // Connect to Azure DevOps Services
            var connection = new VssConnection(new Uri(collectionUri), creds);
            
            // Get a GitHttpClient to talk to the Git endpoints
            using var gitClient = connection.GetClient<GitHttpClient>();
            
            // Get data about a specific repository
            var repo = gitClient.GetRepositoryAsync(projectName, repoName).Result;
        }
    }
}

Další ukázky ověřování najdete v tématu Ukázky .NET.

Reference

Další informace a aktuální referenční dokumentaci najdete v prohlížeči rozhraní .NET API.

Ukázky

Podívejte se na ukázky na naší stránce ukázek .NET nebo přímo v úložišti .NET Na GitHubu.

Další informace o balíčcích NuGet naleznete v tématu Microsoft.VisualStudio.Services.Client.

Známé problémy

Dialogové okno interaktivního ověřování se nezobrazuje při použití OM Azure DevOps v jednovláknovém apartmánu (STA)

Dialogové okno interaktivního ověřování se nezobrazuje v případech, kdy váš kód běží z jednovláknového apartmánu (STA). K tomuto problému obvykle dochází z aplikací WPF . Chcete-li tento problém vyřešit, můžete změnit inicializační metodu tak, aby byla asynchronní a vyžaduje ověřování jako v následujícím příkladu.

async void InitAzureDevOps()
{
    Uri _uri = new Uri("https://dev.azure.com/MyAccount/");

    var creds = new VssClientCredentials(new WindowsCredential(false),
                                         new VssFederatedCredential(false),
                                         CredentialPromptType.PromptIfNeeded);

    VssConnection vssConnection = new VssConnection(_uri, creds);
    await vssConnection.ConnectAsync();

    ...

}

Použití verzí NetStandard 2.0 OM Azure DevOps

Pro naše balíčky NuGet verze 16.143.1 podporujeme NetStandard 2.0. Tyto balíčky korelují s Azure DevOps Serverem 2019 RTW a jsou plně kompatibilní s Azure DevOps.

Balíček Microsoft.TeamFoundationServer.ExtendedClient nemá podporu NetStandard

Microsoft.TeamFoundationServer.ExtendedClient nepodporuje verzi kompatibilní s netStandardem.

Důležité

Tento balíček obsahuje náš starší objektový model SOAP, který jsme nahradili novějším objektový model REST. Už nepracujeme do staršího objektového modelu SOAP a nemáme žádné plány na vytvoření jeho verze NetStandard.