Compartilhar via


Migrar do cliente WIT OM para as APIs REST

Serviços do Azure DevOps

Importante

Substituição de tecnologia legada necessária

O OM do cliente WIT (modelo de objeto cliente de acompanhamento de item de trabalho) é uma tecnologia herdada que deve ser substituída por bibliotecas de clientes .NET baseadas em REST modernas. A migração fornece melhor desempenho, segurança e suporte multiplataforma.

Este guia ajuda você a migrar o código .NET do OM do cliente WIT preterido para as APIs REST modernas. A migração oferece benefícios significativos:

✅ Vantagens modernas:

  • Operações assíncronas para melhor desempenho
  • Autenticação moderna com as identidades gerenciadas e as entidades de serviço
  • Suporte multiplataforma (.NET Core, .NET 5+ e .NET Framework)
  • Desenvolvimento ativo e suporte contínuo

❌ Limitações herdadas:

  • Limitado apenas ao .NET Framework e ao Windows
  • Operações síncronas e de bloqueio
  • Métodos de autenticação desatualizados

Visão geral da migração

Etapa 1: Atualizar pacotes NuGet – Substituir o OM do cliente WIT por pacotes de cliente REST modernos Etapa 2: Atualizar autenticação – Migrar para métodos de autenticação seguros e modernos Etapa 3: Converter operações – Substituir chamadas síncronas por operações REST assíncronas

Para obter exemplos de código detalhados e exemplos de migração passo a passo, consulte o Guia de Migração de OM do Cliente WIT do GitHub Azure DevOps.

Tabela de migração de cenários comuns

A tabela a seguir mostra como migrar operações comuns de itens de trabalho do WIT Client OM herdado para as APIs REST modernas.

Cenário OM do cliente WIT herdado API REST moderna
Obter lista de itens de trabalho WorkItemStore.Query Itens de Trabalho – Lista
Obter um único item de trabalho WorkItemStore.GetWorkItem Itens de Trabalho – Obter Item de Trabalho
Criar um novo item de trabalho WorkItem Itens de Trabalho – Criar
Atualizar item de trabalho existente WorkItem.Fields Itens de Trabalho – Atualização
Validar um item de trabalho WorkItem.IsValid(),
WorkItem.Validate()
Itens de Trabalho – Atualização (somente validação)
Criar um link para um item de trabalho existente WorkItem.WorkItemLinks.Add Itens de Trabalho – Atualização (adicionar link)
Adicionar um comentário WorkItem.History Itens de Trabalho – Atualizar (adicionar comentário)
Criar um hiperlink WorkItem.Links.Add() Itens de Trabalho – Atualizar (adicionar hiperlink)
Adicionar um anexo WorkItem.Attachments.Add() Itens de Trabalho – Atualizar (adicionar anexo)
Consultar itens de trabalho usando WIQL WorkItemStore.Query() Wiql – Consulta por Wiql
Executar uma consulta existente para obter itens de trabalho WorkItemStore.Query() Wiql – Consulta por ID
Obter lista de tipos de item de trabalho para o projeto Categoria.TiposDeTrabalho Tipos de item de trabalho – lista
Obter detalhes do tipo de item de trabalho Categoria.TiposDeTrabalho Tipos de Item de Trabalho – Obter
Obter lista de campos para um tipo de item de trabalho WorkItemType.FieldDefinitions Campo Tipos de Item de Trabalho – Listar
Obter os detalhes do campo WorkItemType.FieldDefinitions Campo Tipos de Item de Trabalho – Obter

Migração de autenticação

Autenticação herdada (❌ Substituir):

// WIT Client OM with basic authentication
using (var tpc = new TfsTeamProjectCollection(new Uri(collectionUri)))
{
    tpc.Authenticate();
    var workItemStore = tpc.GetService<WorkItemStore>();
}

Autenticação moderna (✅ recomendado):

// REST client with managed identity (for Azure-hosted apps)
var credentials = new VssAzureIdentityCredential();
using var connection = new VssConnection(new Uri(collectionUri), credentials);
var witClient = connection.GetClient<WorkItemTrackingHttpClient>();

// Alternative: Service principal for CI/CD
// var credentials = new VssServicePrincipalCredential(clientId, clientSecret, tenantId);

// Alternative: PAT for development/testing
// var credentials = new VssBasicCredential(string.Empty, personalAccessToken);

Próximas etapas e recursos

📖 Recursos de migração essenciais

🔧 Exemplos de código e ferramentas

🆘 Suporte e comunidade

Dica

Inicie sua migração: Comece com as diretrizes de autenticação para escolher a abordagem certa e veja exemplos de biblioteca de clientes do .NET para exemplos de código de trabalho.