.NET-ügyfélkódtárak
Azure DevOps Services | Azure DevOps Server 2022 – Azure DevOps Server 2019
Az ügyfélkódtárak az Azure DevOpsszal integrálható Windows-alkalmazásokat és szolgáltatásokat létrehozó .NET-fejlesztők számára érhetők el. Az ügyfélkódtárak integrálhatók a munkaelemek nyomon követésével, a verziókövetéssel, a buildeléssel és más szolgáltatásokkal. Ezek a csomagok lecserélik a hagyományos TFS-ügyfél OM-telepítőt, és megkönnyítik az alkalmazás vagy szolgáltatás által igényelt kódtárak beszerzését és újraterjesztését.
Tipp.
Keresse meg a megfelelő .NET-ügyfélosztályt és API-metódust a .NET-ügyfélkódtár-minták és az Azure DevOps API-referencia használatával.
Függőségi diagram
Funkciók
- Letölthető NuGet.org és egyszerűen importálható a Visual Studio-projektekbe
- A kódtárak licencelve vannak az alkalmazásokban és szolgáltatásokban való újraterjesztéshez (a licenc megtekintése)
- A hagyományos ügyfélobjektum-modell API-k és REST API-k elérése
Feljegyzés
A REST-alapú ügyfelek csak az Azure DevOps és a TFS 2015 vagy újabb verziójával működnek. Az Azure DevOps ügyfélkódtárakkal való kibővítéséről és integrálásáról további információt a Team Foundation kiterjesztése című témakörben talál.
Csomag- és Azure DevOps-verzióleképezési tábla
Csomag verziója | Azure DevOps-verzió |
---|---|
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 |
A legújabb előzetes verziókért tekintse meg a NuGet-csomagok gyűjteményét.
REST-csomagok
Csomagok és leírás | Bináris fájlok |
---|---|
Microsoft.VisualStudio.Services.Client Nyilvános REST API-kon keresztül biztosít hozzáférést a megosztott platformszolgáltatásokhoz, például a szervezethez, a profilhoz, az identitáshoz, a biztonsághoz stb. |
Microsoft.VisualStudio.Services.WebApi.dll , , Microsoft.VisualStudio.Services.Common.dll Microsoft.TeamFoundation.Common.dll |
Microsoft.TeamFoundationServer.Client Hozzáférést biztosít a verziókövetéshez, a munkaelemek nyomon követéséhez, a buildeléshez és egyebekhez a nyilvános REST API-kon keresztül. |
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.dll és így tovább. |
Microsoft.VisualStudio.Services.InteractiveClient Támogatja azokat az alkalmazásokat, amelyekhez egy felhasználó interaktív bejelentkezést igényel. |
Microsoft.VisualStudio.Services.Client.Interactive.dll |
Microsoft.VisualStudio.Services.Release.Client Hozzáférést biztosít a kiadási szolgáltatáshoz nyilvános REST API-kon keresztül. |
Microsoft.VisualStudio.Services.ReleaseManagement.WebApi.dll |
Microsoft.TeamFoundation.DistributedTask.Common.Contracts Az elosztott feladatszolgáltatás nyilvános REST API-kkal való eléréséhez használt modelleket tartalmazza. |
Microsoft.TeamFoundation.DistributedTask.Common.Contracts.dll |
Microsoft.TeamFoundation.DistributedTask.WebApi Hozzáférést biztosít az elosztott feladatszolgáltatáshoz nyilvános REST API-kon keresztül. |
Microsoft.TeamFoundation.DistributedTask.WebApi.dll |
Microsoft.VisualStudio.Services.ServiceHooks.WebApi Hozzáférést biztosít a Service Hooks szolgáltatáshoz nyilvános REST API-kon keresztül. |
Microsoft.VisualStudio.Services.ServiceHooks.WebApi.dll |
Microsoft.VisualStudio.Services.Gallery.WebApi Hozzáférést biztosít a Katalógusszolgáltatáshoz nyilvános REST API-k használatával. |
Microsoft.VisualStudio.Services.Gallery.WebApi.dll |
Microsoft.VisualStudio.Services.Notifications.WebApi Hozzáférést biztosít az Értesítési szolgáltatáshoz nyilvános REST API-k használatával. |
Microsoft.VisualStudio.Services.Notifications.WebApi.dll |
Microsoft.VisualStudio.Services.ExtensionManagement.WebApi Hozzáférést biztosít a Bővítménykezelési szolgáltatáshoz nyilvános REST API-kon keresztül. |
Microsoft.VisualStudio.Services.ExtensionManagement.WebApi.dll |
Microsoft.VisualStudio.Services.MemberEntitlementManagement.WebApi Hozzáférést biztosít a tagjogosultság-kezelési szolgáltatáshoz nyilvános REST API-kon keresztül. |
Microsoft.VisualStudio.Services.MemberEntitlementManagement.WebApi.dll |
Microsoft.VisualStudio.Services.ServiceEndpoints.WebApi Hozzáférést biztosít a szolgáltatásvégpontokhoz nyilvános REST API-kon keresztül. |
Microsoft.VisualStudio.Services.ServiceEndpoints.WebApi.dll |
Microsoft.VisualStudio.Services.Search.Client Hozzáférést biztosít a keresési szolgáltatáshoz nyilvános REST API-kon keresztül. |
Microsoft.VisualStudio.Services.Search.Shared.WebApi.dll , Microsoft.VisualStudio.Services.Search.WebApi.dll |
Microsoft.TeamFoundation.PublishTestResults Ez a feladat használható teszteredmények közzétételére és tesztmellékletek feltöltésére az Azure DevOpsban. A csomag a következő eredményformátumokat támogatja: 1. JUnit – tesztek közzététele Junit-projektekből, 2. NUnit– tesztek közzététele Nunit-projektekből, 3. VSTest– tesztek közzététele Visual Studio-projektekből, 4. Xunit– tesztek közzététele Xunit-projektekből |
Microsoft.TeamFoundation.TestClient.PublishTestResults.dll |
Microsoft.VisualStudio.Services.Audit.WebApi Hozzáférést biztosít a naplózási szolgáltatáshoz nyilvános REST API-kon keresztül. |
Microsoft.VisualStudio.Services.Audit.WebApi.dll |
Microsoft.Azure.Pipelines.Policy.Client Hozzáférést biztosít a folyamat jóváhagyásához, ellenőrzéséhez és engedélyezéséhez nyilvános REST API-kon keresztül. |
Microsoft.Azure.Pipelines.Policy.Client.dll |
Tipp.
Ha rendelkezik egy meglévő Windows-alkalmazással vagy szolgáltatással, amely a TFS ügyfélobjektum-modellt használja, használja a .Microsoft.TeamFoundationServer.ExtendedClient
Szappancsomag
Csomag és leírás | Bináris fájlok |
---|---|
Microsoft.TeamFoundationServer.ExtendedClient A verziókövetés, a munkaelemek és a buildelés és egyéb erőforrások használata és kezelése az ügyfélalkalmazásból. Ez a csomag nem támogatja a Net Standard ügyfél OM-t. Csak akkor használja ezt a csomagot, ha a REST API-k nem biztosítják a szükséges funkciókat (például munkaterületek létrehozása a TFVC-ben) |
Microsoft.TeamFoundation.Build.Client.dll , Microsoft.TeamFoundation.DeleteTeamProject.dll , Microsoft.TeamFoundation.Diff.dll , Microsoft.TeamFoundation.Git.Client.dll , Microsoft.TeamFoundation.SharePointReporting.Integration.dll és így tovább. |
Telepítés
Telepítés NuGet-csomagkezelő parancssorból:
PM> Install-Package Microsoft.TeamFoundationServer.ExtendedClient
Kapcsolódás
Ha hitelesített kapcsolatot szeretne létrehozni az Azure DevOpsszal, szerezze be a használni kívánt szolgáltatáshoz tartozó HttpClient-et, majd hívja meg a metódusokat a szolgáltatáshoz.
Lásd az alábbi példákat:
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;
}
Az interaktív párbeszédpanelt eredményező hitelesítési útvonalak nem érhetők el a .NET-ügyfélkódtárak .NET Standard verziójában. Amikor a .NET Standard verziót használja, adja meg a hitelesítő adatait explicitebb módon a hitelesítéshez, például az alábbi példában.
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;
}
}
}
További hitelesítési mintákért lásd a .NET-mintákat.
Referencia
További információkért és a naprakész referenciadokumentációért tekintse meg a .NET API böngészőt.
Minták
Tekintse meg a mintákat a .NET-minták oldalán vagy közvetlenül a .NET GitHub-adattárban.
További információ a NuGet-csomagokról: Microsoft.VisualStudio.Services.Client.
Ismert problémák
Az interaktív hitelesítési párbeszédpanel nem jelenik meg az Azure DevOps OM egyetlen szálas lakásban (STA) való használatakor
Az interaktív hitelesítési párbeszédpanel nem jelenik meg olyan esetekben, amikor a kód egyetlen szálon futó lakásból (STA) fut. Ez a probléma gyakran előfordul a WPF-alkalmazásokban. A probléma megoldásához módosíthatja az inicializálási módszert aszinkronra, és kérheti a hitelesítést az alábbi példában leírtak szerint.
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();
...
}
Az Azure DevOps OM NetStandard 2.0-s verzióinak használata
NuGet-csomagjaink 16.143.1-es verziójához támogatjuk a NetStandard 2.0-t. Ezek a csomagok korrelálnak az Azure DevOps Server 2019 RTW-vel, és teljes mértékben kompatibilisek az Azure DevOpsszal.
A Microsoft.TeamFoundationServer.ExtendedClient csomag nem rendelkezik NetStandard-támogatással
A Microsoft.TeamFoundationServer.ExtendedClient nem támogatja a NetStandard-kompatibilis verziót.
Fontos
Ez a csomag tartalmazza a régebbi SOAP objektummodellt, amelyet az újabb REST objektummodell váltott fel. Már nem fektetünk be a régebbi SOAP objektummodellbe, és nem tervezzük annak NetStandard-verzióját létrehozni.