notas sobre a versão do Visual Studio 2022
Estamos empolgados em anunciar a disponibilidade do Visual Studio 2022 v17.12. Esta atualização se concentra em fornecer experiências fantásticas para desenvolvedores para trabalhar com projetos de do .NET 9 e novos recursos de produtividade de IA , juntamente com melhorias contínuas em todos os lugares.
Características
Lista de recursos para 17.12 que foi lançada em 12 de novembro de 2024 .
Produtividade
Copiar da lista de erros 📣
Copiar um erro da Lista de Erros agora copia apenas a descrição em vez de toda a linha para a área de transferência.
Você vê um erro na Lista de Erros que não sabe como corrigir. Portanto, selecione-o e pressione Ctrl+C para copiar a descrição de uma pesquisa na Web. Depois de colá-lo no mecanismo de pesquisa, você percebe que ele copiou todos os cabeçalhos de coluna e valores de linha em vez de apenas a descrição. Agora você deve excluir tudo, exceto a descrição do erro antes de executar a pesquisa na Web. Isso é complicado, mas agora temos uma correção!
de correção de cópia da Lista de Erros
Quando você copia um erro da Lista de Erros usando Ctrl+C, somente a descrição é copiada para a área de transferência. Isso facilita a pesquisa do erro online ou compartilhá-lo com outras pessoas.
Você ainda pode copiar a linha inteira clicando com o botão direito do mouse no erro e selecionando Copiar linha no menu de contexto ou atingindo Ctrl+Shift+C.
Se o que você queria fazer com a descrição do erro era fazer uma pesquisa na Web, basta acessar Ctrl+F1 pesquisar informações sobre o erro online.
📣 Consulte tíquete de recurso para compartilhar seus comentários e continuar a conversa.
Ir para a linha em qualquer lugar no 📣
de Pesquisa de CódigoNa Pesquisa de Código, agora você pode navegar até uma linha específica no documento atual ou em outro documento especificado.
Às vezes, você sabe que há um problema em uma determinada linha em seu código e deseja chegar a ele rapidamente. Talvez você tenha sido informado sobre um erro que está sendo lançado na linha 43 de algum arquivo, ou você deseja chegar à parte inferior de um arquivo específico.
de Pesquisa de Código agora dá suporte à navegação rápida para uma linha específica em seu código.
Abra de Pesquisa de Código e vá para uma linha no documento de atual usando dois-pontos + número de linha. Por exemplo,
:39
navegará até a linha 39 no arquivo ativo.
![]()
Você também pode ir para uma linha em um documento diferente usando nome de arquivo + dois-pontos + número de linha. Por exemplo,
Order:43
navegará até a linha 43 em Order.cs. Se você não especificar o nome exato do arquivo, a pesquisa tentará encontrar a melhor correspondência.
![]()
📣 Consulte tíquete de recurso para compartilhar seus comentários e continuar a conversa.
encaixar a janela pesquisa de código 📣
Agora você pode posicionar livremente a janela Pesquisa de Código com recursos como encaixe e ocultação automática.
Se você precisar de Código ou Pesquisa de Recursos para ficar fora do seu caminho, agora terá mais controle sobre o comportamento da janela de pesquisa.
Agora você pode encaixar a janela de pesquisa e executar ações da janela de ferramentas com ela, como o Gerenciador de Soluções e outras pessoas.
inferior
Depois de abrir de Pesquisa de Código ou de Pesquisa de Recursos, clique no ícone de caixa na parte superior direita para convertê-lo em uma janela de ferramenta. Você pode optar por acoplá-lo em outro lugar, pop-lo, ocultar automaticamente etc. Você pode reverter para a janela pop-up dispensável clicando no ícone no canto superior direito.
![]()
Também simplificamos e limpamos a experiência de visualização na pesquisa. Agora há um botão, indicado com um ícone de olho, para ativar e desativar a visualização.
![]()
A posição do painel de visualização também será ajustada com base nas dimensões da janela de pesquisa.
![]()
📣 Consulte tíquete de recurso para compartilhar seus comentários e continuar a conversa.
Personalizar 📣
de indicador de texto recolhidoDefinir cores personalizadas para o indicador de texto recolhido no editor do Visual Studio.
Agora você pode personalizar ainda mais a experiência do editor com novas opções para personalizar o indicador de texto recolhido:
![]()
Para experimentá-lo e definir cores personalizadas de primeiro plano e plano de fundo para cada um, navegue até Ferramentas > Opções > Ambiente > Fontes e Cores.
![]()
Lá, você encontrará dois novos itens para personalização:
- de Indicador de Texto Recolhido (Recolhido)
- indicador de texto recolhido (expandido)
Você pode definir as cores para os indicadores recolhidos e expandidos independentemente uns dos outros usando cores predefinidas ou cores personalizadas de sua escolha.
📣 Consulte tíquete de recurso para compartilhar seus comentários e continuar a conversa.
Atualizar os resultados do Find 📣
Agora você pode atualizar os resultados para um Find anterior para obter up-tocorrespondências de pesquisa de data.
Ouvimos de muitos usuários que é frustrante ter que reabrir a janela Localizar e passar pelos movimentos de refazer uma pesquisa para obter resultados atualizados. Talvez você tenha apenas refatorado algum código e queira confirmar se tudo foi alterado conforme o esperado ou fez pull de algumas alterações recentes e precisa da operação Find recente para refletir essas atualizações.
Depois de concluir Localizar em Arquivos, agora você terá a opção de atualizar os resultados de Localização na janela. Você obterá seus resultados atualizados sem precisar refazer a pesquisa.
![]()
Também reprojetamos a opção Desinserção de Repetição anterior para diferenciá-la da Atualização. Agora ele é representado como Modificar Localizar com um ícone de lápis. Esse botão ainda reabrirá Localizar em Arquivos com os mesmos critérios de pesquisa usados para essa janela de resultados.
![]()
📣 Consulte tíquete de recurso para compartilhar seus comentários e continuar a conversa.
Mais espaço para a barra de rolagem horizontal 📣
Agora você pode controlar a visibilidade dos indicadores de nível de arquivo no CodeLens.
A área com a barra de rolagem horizontal pode ficar bastante confusa no Visual Studio. Estamos ajudando a facilitar a limpeza, desativando os indicadores de nível de arquivo no CodeLens por padrão.
![]()
Se quiser que a opção esteja ativada, você poderá encontrar a opção de indicador codelens no nível do arquivo Tools > Options > Text Editor > Advanced. Essa opção afeta a visibilidade dos tipos de arquivo que têm o controle CodeLens no nível do arquivo na margem inferior do editor, como XAML, HTML e CSS, e não afeta arquivos que contêm CodeLens embutido.
opção
📣 Consulte tíquete de recurso para compartilhar seus comentários e continuar a conversa.
limpeza de código sem bloqueio ao salvar
Quando a Limpeza de Código é executada no Save, ela agora opera de maneira não bloqueada, para uma experiência de codificação mais suave.
Anteriormente, quando uma Limpeza de Código é executada no Save, você não pode executar nenhuma ação no IDE. Agora, aprimoramos isso para operar de maneira não bloqueada.
O processo de limpeza será executado em segundo plano e poderá ser cancelado automaticamente se você retomar a digitação, garantindo uma experiência de codificação mais suave e responsiva.
limpeza de código
![]()
dependências transitivas na interface do usuário do Gerenciador de Pacotes no nível da solução
Ao examinar a guia Instalada na interface do usuário do gerenciador de pacotes do Visual Studio no nível da solução, ela agora mostrará pacotes diretos e transitivos.
Anteriormente, na guia Instalado na interface do usuário do gerenciador de pacotes do Visual Studio, você podia ver dependências diretas e transitivas apenas para seus projetos. Com esta versão, adicionamos a capacidade de ver dependências transitivas para o nível da solução também.
![]()
dependências transitivas com vulnerabilidades no Gerenciador de Soluções
Ao definir
NuGetAuditMode
comoall
, o Gerenciador de Soluções mostrará indicadores de dependências transitivas com vulnerabilidades.A Auditoria do NuGet, adicionada pela primeira vez no Visual Studio 17.8 (e no .NET 8), fornece avisos durante a restauração se algum pacote usado pelo seu projeto tiver vulnerabilidades conhecidas.
Para obter mais informações sobre a Auditoria do NuGet, incluindo todas as opções de configuração, consulte a documentação do node Auditoria do NuGet.
Essas vulnerabilidades podem estar em suas dependências diretas, bem como nas dependências transitivas (os pacotes de suas dependências dependem). Agora, se você definir
NuGetAuditMode
comoall
, o Gerenciador de Soluções mostrará indicadores não apenas para dependências diretas, mas também transitivas com vulnerabilidades.
do Gerenciador de Soluções
GitHub Copilot
faça mais perguntas ao GitHub
pesquisar no GitHub para localizar confirmações, problemas, solicitações pull, repositórios e tópicos diretamente do Visual Studio.
Agora você pode usar o GitHub Copilot Chat para pesquisar no GitHub para encontrar confirmações, problemas, solicitações de pull, repositórios e tópicos.
Você pode fazer perguntas como:
- @github Quais são todas as PRs abertas atribuídas a mim?
- @github Quais são os últimos problemas atribuídos a mim?
- @github Quando foi a versão mais recente?
- @github mostrar os PRs mesclados recentes de @davidfowl
de habilidades do GitHub
Essa funcionalidade está disponível para todos os usuários do GitHub Copilot. Saiba mais sobre de Habilidades do GitHub disponíveis na documentação do GitHub Copilot.
Importante
Para usar esse recurso, certifique-se de ativar o GitHub Copilot
instruções personalizadas
para o GitHub Copilot
Criar um arquivo que adiciona automaticamente informações a todas as perguntas feitas ao GitHub Copilot Chat.
Com o GitHub Copilot, você pode receber respostas de chat adaptadas ao fluxo de trabalho de sua equipe, ferramentas preferenciais e especificidades do projeto , simplesmente fornecendo contexto. Em vez de adicionar esse detalhe contextual a cada consulta de chat, você pode criar um arquivo que forneça essas informações automaticamente. Embora esse contexto adicional não apareça no chat, ele está disponível para o GitHub Copilot, permitindo que ele gere respostas mais precisas e relevantes.
de Instruções Personalizadas do GitHub Copilot
Como habilitar instruções personalizadas
- Habilite o recurso por meio de > do Copilot > do GitHub e verifique (versão prévia) Habilite as instruções personalizadas a serem carregadas dos arquivos .github/copilot-instructions.md e adicionadas às solicitações.
- Adicione copilot-instruction.md na raiz do repositório dentro do arquivo .github, crie o arquivo se ele ainda não existir.
![]()
Saiba mais sobre como criar instruções personalizadas aqui
Importante
Para usar esse recurso, certifique-se de ativar o GitHub Copilot
Seleção de modelo de
no GitHub Copilot Chat
GitHub Copilot agora permite que você escolha seu modelo.
O OpenAI o1-preview e o o1-mini agora estão disponíveis para todos os usuários no GitHub Copilot Chat no Visual Studio.
Agora você pode experimentar esses modelos em primeira mão usando o modelo o1-preview, o1-mini ou o GPT-4o padrão para alimentar o GitHub Copilot Chat. Com a mudança de modelo disponível, você pode mudar perfeitamente de explicar APIs ou gerar código básico para criar algoritmos intrincados ou depurar erros lógicos.
Visite o do GitHub Changelog para saber mais sobre esse recurso.
Importante
Para usar esse recurso, certifique-se de ativar o GitHub Copilot
compreensão contextual aprimorada
compreensão contextual aprimorada no GitHub Copilot oferece respostas mais precisas.
Compreensão contextual aprimorada no GitHub Copilot
O GitHub Copilot agora oferece uma compreensão contextual aprimorada para oferecer respostas ainda mais precisas. Com essa atualização, o GitHub Copilot pode interpretar intuitivamente as principais características em seu código, adaptando sugestões às necessidades exclusivas do seu projeto. Essa abordagem mais inteligente para a assistência de código foi projetada para ajudá-lo a trabalhar com mais eficiência, sem a necessidade de ajustes de contexto frequentes.
Experimente o GitHub Copilot hoje!
Importante
Para usar esse recurso, certifique-se de ativar o GitHub Copilot
atualizações de exclusão de conteúdo
Exclusão de Conteúdo agora dá suporte a submódulos e repositórios aninhados.
Aprimoramos a forma como nosso sistema lida com submódulos e repositórios aninhados, facilitando o trabalho com estruturas de projeto complexas.
Além disso, adicionamos suporte para repositórios não Git, expandindo a flexibilidade do fluxo de trabalho e permitindo que você integre perfeitamente uma gama mais ampla de projetos.
Importante
Para usar esse recurso, certifique-se de ativar o GitHub Copilot
de inspeção de variável inteligente de IA
Otimizar o fluxo de trabalho de depuração com inspeção de variável de IA integrada.
Inspecionar e analisar valores de Locais, Autos e Dicas de Dados nunca foi tão fácil com o Ask GitHub Copilot no Visual Studio. Basta clicar com o botão direito do mouse em qualquer valor para obter insights detalhados orientados por IA sobre erros, resultados inesperados ou anomalias , tudo sem sair do IDE.
pesquisa de variável de ia
Esse recurso aprimorará significativamente sua velocidade de solução de problemas analisando variáveis em tempo real em seu IDE sempre que surgirem valores inesperados.
Importante
Para usar esse recurso, certifique-se de ativar o GitHub Copilot
visualizador IEnumerable alimentado por IA
expressões editáveis LINQ de IA no Visualizador IEnumerable.
Aprimoramos o recurso de expressão editável no Visualizador IEnumerable com assistência de IA. O novo recurso Ask Copilot permite que os usuários aproveitem a IA diretamente na caixa de texto de expressão editável para criar expressões LINQ complexas.
![]()
Para acessar o chat do GitHub Copilot, basta clicar no ícone do GitHub Copilot localizado no canto inferior direito da seção de expressão editável. No chat, você encontrará exemplos de sintaxe LINQ de exemplo. Além disso, você pode descrever sua consulta em linguagem natural e o GitHub Copilot gerará a consulta LINQ correspondente. Para aplicar a filtragem de consulta LINQ ao visualizador, use o botão Mostrar no Visualizador no chat.
Ele fornece comentários e diretrizes instantâneas, tornando o processo de criação de filtros e transformações complexos mais intuitivo e eficiente.
Importante
Para usar esse recurso, certifique-se de ativar o GitHub Copilot
testes de depuração com o GitHub Copilot
Obter ajuda com a depuração de testes com falha usando testes de depuração com o GitHub Copilot.
Precisa de ajuda para depurar seus testes de unidade com falha. Agora, o GitHub Copilot pode ajudar fornecendo um plano de depuração e orientando você por meio da depuração do teste com falha para que você se aproxime da passagem clicando no botão Depurar com o Copilot no Gerenciador de Testes.
![]()
Depois de iniciar o recurso, o GitHub Copilot fornecerá um plano de depuração, definirá pontos de interrupção apropriados e observará variáveis e iniciará a sessão de depuração. Quando ele atinge o ponto de interrupção, ele fornece ao GitHub Copilot valores para as variáveis observadas e determina sua próxima etapa, continue depurando ou corrija o código do problema. Você pode continuar com essa conversa até ter um teste aprovado.
![]()
Importante
Para usar esse recurso, certifique-se de ativar o GitHub Copilot
corrigir código com 📣
do GitHub CopilotGitHub Copilot ajuda você a resolver problemas de código.
O GitHub Copilot agora está integrado à lâmpada e à lista de erros, fornecendo correções rápidas e explicações perspicazes para problemas de código. Se você estiver desenvolvendo em C# ou C++, esse recurso ajuda você a entender e resolver problemas em sua base de código com mais eficiência.
Para começar, basta invocar a lâmpada e selecionar Corrigir com o Copilot. Isso iniciará um chat embutido com o GitHub Copilot, oferecendo uma correção disponível.
![]()
Você também pode selecionar o ícone do GitHub Copilot na lista de erros para abrir o painel de chat, onde encontrará explicações detalhadas e soluções para o erro em questão.
![]()
Aproveitando LLMs, o GitHub Copilot fornece explicações e correções úteis diretamente na lâmpada e na lista de erros, aprimorando sua experiência de codificação.
📣 Consulte tíquete de recurso para compartilhar seus comentários e continuar a conversa.
Importante
Para usar esse recurso, certifique-se de ativar o GitHub Copilot
melhores conclusões de IA para o C#
o GitHub Copilot traz contexto adicional de arquivos de origem relevantes para melhorar as conclusões do C#.
As conclusões de código do GitHub Copilot fornecem sugestões de preenchimento automático embutidas conforme você codifica. Essas sugestões são geradas com base no conteúdo do arquivo ativo no momento e em qualquer outro arquivo aberto em seu editor. No entanto, descobrimos que incorporar um contexto mais relevante melhora significativamente essas sugestões.
Para aprimorar a experiência dos desenvolvedores do C#, atualizamos o GitHub Copilot para incluir contexto adicional em C#, como tipos e métodos disponíveis em conclusões.
Com a versão mais recente do Visual Studio, o GitHub Copilot agora considera automaticamente arquivos semanticamente relevantes para contexto adicional, mesmo que esses arquivos não estejam abertos no editor. Essa melhoria ajuda a reduzir alucinações, oferecendo sugestões mais relevantes e precisas.
Antes de: arquivos semanticamente relevantes não são considerados como contexto para conclusões do GitHub Copilot
![]()
Após: arquivos semanticamente relevantes são considerados como contexto para conclusões do GitHub Copilot
![]()
Importante
Para usar esse recurso, certifique-se de ativar o GitHub Copilot
código de referência
no GitHub Copilot
Introdução à referência de código no GitHub Copilot, permitindo que você permita sugestões de código contendo correspondências de código público ao receber informações detalhadas sobre a correspondência.
Estamos empolgados em anunciar que a referência de código agora está disponível no GitHub Copilot no Visual Studio!
![]()
Essa nova funcionalidade fornece transparência para os desenvolvedores notificando-os quando as sugestões do GitHub Copilot correspondem ao código público. Agora você pode ver o código correspondente, seu arquivo de origem e quaisquer informações de licenciamento associadas, ajudando-os a tomar decisões mais informadas durante a codificação.
A referência de código permite bloquear ou permitir sugestões que contenham correspondências de código público, aprimorando o controle e a personalização.
Ao integrar a referência de código no GitHub Copilot, estamos promovendo o compartilhamento de conhecimento, aprimorando a transparência e capacitando você a criar com confiança. Seja você um desenvolvedor individual ou parte de uma equipe maior, esse recurso aprimora seu fluxo de trabalho e ajuda você a navegar pelas complexidades do código público com facilidade.
Experimente o GitHub Copilot no Visual Studio hoje e assuma o controle do processo de desenvolvimento com maior transparência e confiança!
Importante
Para usar esse recurso, certifique-se de ativar o GitHub Copilot
chat guiado no GitHub Copilot
Apresentando uma nova maneira mais conversacional de conversar com o GitHub Copilot.
Estamos apresentando uma nova maneira mais conversacional de interagir com o GitHub Copilot Chat!
![]()
Introduzimos uma maneira mais interativa e conversacional de usar o GitHub Copilot Chat. Agora, em vez de se sentir preso ou inseguro, o GitHub Copilot orientará você a esclarecer perguntas quando o contexto não estiver claro, garantindo respostas mais precisas e úteis.
Essa experiência de chat guiada ajuda a refinar suas consultas, oferece sugestões e garante interações mais suaves e produtivas. Com essa nova modalidade de chat, você desfrutará de um GitHub Copilot mais inteligente e intuitivo que se adapta às suas necessidades conforme você codifica.
Experimente a nova experiência de chat guiada hoje e veja a diferença para si mesmo!
Importante
Para usar esse recurso, certifique-se de ativar o GitHub Copilot
de integração do GitHub Copilot
Introdução mais rápido no GitHub Copilot Chat!
Precisa de ajuda para começar a usar o GitHub Copilot Chat? Apresentamos dois novos recursos de integração para ajudá-lo a começar mais rapidamente.
Prompts de inicialização
Envie sua primeira mensagem para o GitHub Copilot clicando em um dos prompts inicialmente! Use esses prompts para ver quais recursos o GitHub Copilot tem para oferecer a você em seu fluxo de trabalho.
![]()
Biblioteca de prompts
Se você precisar fazer referência a alguns prompts pré-feitos novamente, clique no botão biblioteca de prompts (ícone do livro) para ver uma lista de todos os prompts disponíveis para você. Esta biblioteca contém prompts comumente usados, a apenas um clique de distância!
de promptlibrary do GitHub Copilot
Quer você esteja explorando novas tarefas de codificação ou apenas procurando inspiração, nossos prompts estão aqui para ajudá-lo a se aprofundar e começar a aproveitar ao máximo o GitHub Copilot Chat.
Dê uma chance e veja onde ele leva você!
Importante
Para usar esse recurso, certifique-se de ativar o GitHub Copilot
.REDE
Obter mais com o .NET 9 📣
.NET 9 eleva o desenvolvimento de aplicativos nativos e inteligentes na nuvem, com foco em aprimoramentos de produtividade, implantações simplificadas e integração acelerada de IA.
O .NET 9 eleva o desenvolvimento de aplicativos nativos de nuvem e inteligentes, com foco em aprimoramentos de produtividade, implantações simplificadas e integração acelerada de IA, fornecendo desempenho superior em uma ampla gama de aplicativos. Com suporte total para o .NET 9 no Visual Studio 17.12, você pode aproveitar facilmente todas as melhorias mais recentes. Para obter mais detalhes sobre as novidades, visite Novidades no .NET 9.
.NET 9
Além disso, você encontrará atualizações para recursos em torno do IDE que tornam o trabalho com o .NET e ASP.NET mais produtivo do que nunca.
📣 Consulte tíquete de recurso para compartilhar seus comentários e continuar a conversa.
suprimir avisos para avisos específicos do GitHub respeitados no Visual Studio
NuGet permite suprimir avisos para avisos específicos do GitHub e as supressões são respeitadas no Visual Studio.
A Auditoria do NuGet fornece avisos quando um pacote usado no projeto tem uma vulnerabilidade conhecida. É sempre recomendável atualizar para uma nova versão do pacote, mas se a atualização for impossível e você estiver confiante de que o software não está em risco, poderá suprimir avisos para avisos específicos do GitHub adicionando
NuGetAuditSuppress
itens ao arquivo de projeto.<Project Sdk="Microsoft.NET.Sdk"> <ItemGroup> <NuGetAuditSuppress Include="https://github.com/advisories/GHA1234" /> </ItemGroup> </Project>
capacidade de configurar nuget.org como
de origem de auditoriaAgora você pode definir nuget.org como uma fonte de auditoria para obter informações de vulnerabilidade mesmo ao usar outros feeds do NuGet.
A Auditoria do NuGet requer uma fonte de pacote que fornece um banco de dados de vulnerabilidade. nuget.org fornece informações de vulnerabilidades do Banco de Dados de Avisos do GitHub.
A partir do Visual Studio 17.12, agora é possível especificar fontes de auditoria em arquivos NuGet.Config, portanto, não é mais necessário usar nuget.org como uma fonte de pacote.
Se você não estiver usando nuget.org como fonte de pacote e quiser usar a Auditoria do NuGet para relatórios de pacotes vulneráveis durante a restauração, adicione o seguinte a um arquivo NuGet.Config no diretório da solução:
<confiuration> <!-- any existing config, including <packageSources> --> <auditSources> <add key="nuget.org" value="https://api.nuget.org/v3/index.json" /> </auditSources> </configuration>
Diagnóstico de & de depuração
📣
de depuração do Blazor WebAssemblyhistograma do medidor deUma experiência de depuração aprimorada para aplicativos Blazor WebAssembly direcionados ao .NET 9 ou posterior.
O Visual Studio agora oferece uma experiência de depuração aprimorada para aplicativos Blazor WebAssembly direcionados ao .NET 9 ou posterior:
- Os tipos de dados mostrados no depurador agora correspondem aos tipos de dados .NET esperados.
- Os membros do tipo e a visibilidade do membro usam ícones esperados.
- A pilha de chamadas exibida é limpa para mostrar apenas a pilha de chamadas do .NET e respeita corretamente a configuração Just My Code.
- Agora há suporte para a janela de módulos.
- O suporte à avaliação de expressão na janela Imediata e para relógios e pontos de interrupção condicionais é expandido e aprimorado.
melhorias de depuração do
Para habilitar a nova experiência de depuração de visualização:
- Habilite o Habilitar nova configuração de depurador do .NET 9+ Mono.
- Instale o SDK do .NET 9 mais recente.
- Atualize seu aplicativo Blazor para o .NET 9 de destino.
📣 Consulte tíquete de recurso para compartilhar seus comentários e continuar a conversa.
no criador de perfil
valores retornados do métodoinsights de desempenho aprimorados usando o histograma de medidor na ferramenta de contador do criador de perfil.
O aprimoramento recente do pacote de criação de perfil de desempenho do Visual Studio apresenta o recurso de histograma do medidor. Essa ferramenta permite identificar e analisar dados de histograma gerados por instrumentos de histograma. Ao gravar dados desses instrumentos, os resultados do histograma são visualizados, fornecendo uma representação clara da distribuição de dados.
Meter Histogram Counter Tooldo Contador de Histograma do Medidor de
Além disso, o grafo de linha de natação oferece uma exibição detalhada e segmentada das métricas de desempenho, melhorando sua capacidade de identificar e resolver problemas de desempenho de forma eficaz.
Display 📣
O depurador agora mostra valores de retorno embutidos com assistência de IA para melhorar a eficiência.
O depurador do Visual Studio agora exibe valores embutidos para instruções de retorno, respondendo a um dos recursos mais solicitados da comunidade de desenvolvedores.
Esse aprimoramento permite que você veja os valores exatos sendo retornados por funções diretamente no código, eliminando a necessidade de código adicional ou variáveis temporárias para inspecionar valores retornados.
![]()
Com o GitHub Copilot, você pode ir mais longe usando a opção Ask Copilot em focalizar para analisar valores retornados diretamente no Visual Studio, permitindo que você resolva problemas imediatamente.
Ele tem suporte no código nativo e gerenciado.
📣 Consulte tíquete de recurso para compartilhar seus comentários e continuar a conversa.
Exportar grupos de pontos de interrupção com facilidade 📣
importação e exportação sem esforço de grupos de pontos de interrupção.
Os Grupos de Pontos de Interrupção do Visual Studio agora dão suporte à funcionalidade de importação e exportação, permitindo que você gerencie e mantenha facilmente suas estruturas de ponto de interrupção em vários projetos ou ambientes.
de importação
Esse novo recurso permite que você exporte seus grupos de pontos de interrupção com suas configurações e, posteriormente, importe-os para soluções diferentes, garantindo uma configuração de depuração consistente sem a necessidade de recriar manualmente grupos de pontos de interrupção novamente.
📣 Consulte tíquete de recurso para compartilhar seus comentários e continuar a conversa.
IntelliSense para o 📣
do Visualizador IEnumerableVisualizador IEnumerable Aprimorado com IntelliSense para consultas LINQ mais rápidas.
O Visualizador IEnumerable foi aprimorado com o IntelliSense, fornecendo sugestões de código em tempo real e preenchimento automático, o que torna a gravação de expressões LINQ mais rápidas e precisas.
do IntelliSense do Visualizador IEnumerable
Essa melhoria simplifica o processo de criação e edição de consultas oferecendo recomendações de código inteligente, reduzindo a probabilidade de erros e acelerando o tempo de desenvolvimento.
📣 Consulte tíquete de recurso para compartilhar seus comentários e continuar a conversa.
Analisar o uso de memória ao longo do tempo
Selecione e compare dois instantâneos de memória usando a janela Ferramenta de Diagnóstico.
A janela Ferramenta de Diagnóstico agora dá suporte à comparação de instantâneos de memória, facilitando a análise de alterações de memória ao longo do tempo.
Para usar esse recurso, verifique se você tem pelo menos dois instantâneos de memória capturados na guia de Memória na janela Ferramenta de Diagnóstico.
Selecionando instantâneos para comparação
- Segure a tecla Ctrl e clique nas linhas de instantâneo para selecionar os dois instantâneos.
- Como alternativa, mantenha pressionada a tecla shift e use as teclas de seta
up/down
para selecionar dois instantâneos consecutivos.Desmarcando instantâneos
- Segure a tecla Ctrl e clique no instantâneo que você deseja desmarcar.
Exibindo a diferença
Depois de selecionar os instantâneos de memória para comparação, clique no botão Exibir Diferimento localizado acima da lista de instantâneos para exibir as diferenças entre eles.
de MMA de Instantâneo de Diferenciação
Ferramentas do Git
Gerenciar renomeação de arquivo com o Git 📣
Tenha tranquilidade ao renomear arquivos com uma nova notificação.
Ao renomear arquivos do gerenciador de soluções, você será lembrado para preparar suas alterações para ver as renomeações no Git. Isso aumenta sua confiança de que o Git está reconhecendo sua alteração de arquivo e acompanhando-a corretamente. Descobrimos que isso era um ponto de confusão para muitos clientes, por isso trabalhamos com pessoas da Comunidade de Desenvolvedores para produzir uma nova notificação.
de notificação de mv do Git
📣 Consulte tíquete de recurso para compartilhar seus comentários e continuar a conversa.
rascunhos e modelos de solicitação pull 📣
Criar rascunhos de solicitação de pull e iniciar suas descrições com modelos no Visual Studio.
Agora você pode criar rascunhos de solicitação de pull e iniciar suas descrições com modelos do GitHub no Visual Studio. Essas foram as duas principais solicitações para criar uma experiência de solicitação de pull.
PRs de rascunho
Use o menu suspenso no botão Criar para Criar como Rascunho.
![]()
Modelos de PR
Seu modelo de PR padrão será usado ao criar uma nova PR para o GitHub e o Azure DevOps. Saiba mais sobre como adicionar um modelo de PR ao repositório no de documentação do GitHub e documentação do Azure DevOps.
📣 Consulte tíquete de recurso para compartilhar seus comentários e continuar a conversa.E fazer esta pesquisa para ajudar a melhorar ainda mais o recurso.
Criar repositórios internos do GitHub 📣
Visual Studio agora dá suporte à criação de repositórios internos e inclui diretrizes para cada tipo de repositório para dar mais confiança ao iniciar um novo projeto.
O Visual Studio agora dá suporte a repositórios internos para suas organizações do GitHub. Também incluímos diretrizes para cada tipo de repositório para dar mais clareza sobre a visibilidade do novo projeto, dependendo de qual conta você está usando.
![]()
📣 Consulte tíquete de recurso para compartilhar seus comentários e continuar a conversa.
Copiar link do Git 📣
Você pode obter um link do GitHub ou do Azure DevOps para uma linha de código específica para facilitar o compartilhamento com seus colegas.
Sempre que você compartilha algumas linhas de código com um colega, muitas vezes pode ser útil para eles obter contexto extra do repositório. No entanto, se eles estiverem trabalhando em outra coisa, pode levar muito tempo e interromper o trabalho deles para fazer check-out do branch.
Agora, você pode realçar o código que deseja compartilhar em seu editor, abrir o menu de contexto com um clique com o botão direito do mouse e, no submenu do Git, obter um link compartilhável para seu código no GitHub ou no Azure DevOps. Isso torna simples e fácil colaborar e suaviza o fluxo entre o IDE e seus repositórios remotos na Web.
![]()
Você também pode obter links compartilháveis diretamente do histórico de confirmação. Isso permite que o código não faça check-out no momento para ser referenciado da mesma forma que sem esforço.
![]()
📣 Consulte tíquete de recurso para compartilhar seus comentários e continuar a conversa.
suporte a vários repositórios Git 📣
Agora você pode criar solicitações de pull e vincular itens de trabalho em cenários de vários repositórios para o GitHub e o Azure DevOps.
Agora você pode criar solicitações de pull e vincular itens de trabalho em cenários de vários repositórios. Para o GitHub e o Azure DevOps, damos suporte a suas integrações quando você usa o seletor de repositório para se concentrar em um repositório específico em seus cenários de vários repositórios.
seletor de repositório
📣 Consulte tíquete de recurso para compartilhar seus comentários e continuar a conversa.
Personalizar a mensagem de confirmação do Git de IA 📣
Você pode adicionar instruções adicionais ao prompt para gerar sua mensagem de confirmação do Git com o GitHub Copilot.
Agora você pode adicionar instruções adicionais ao prompt para gerar sua mensagem de confirmação do Git com o GitHub Copilot. Isso permite que você personalize a mensagem de confirmação para se ajustar melhor ao fluxo de trabalho e aos padrões da equipe. Você pode especificar o número de linhas a serem geradas, o comprimento das linhas e até mesmo fornecer um estilo de confirmação de exemplo. Edite a mensagem no campo prompt em Tools > Options > GitHub > Copilot > Source Control Integration.
de Mensagens do Git
📣 Consulte tíquete de recurso para compartilhar seus comentários e continuar a conversa.
IDE
📣
de configuração de inicialização de vários projetosSimplifique a depuração configurando e salvando perfis de inicialização para projetos específicos em soluções de vários projetos. Compartilhe configurações sem esforço com sua equipe.
O recurso Configuração de Inicialização de Vários Projetos permite que você configure e salve perfis para iniciar projetos específicos em uma solução de vários projetos em estados predefinidos para depuração.
de configuração de inicialização de vários projetos
Isso simplifica o processo de trabalhar com soluções complexas, melhora a eficiência de depuração e permite o compartilhamento fácil de configurações entre os membros da equipe.
📣 Consulte tíquete de recurso para compartilhar seus comentários e continuar a conversa.
Nota
Esse recurso deve ser habilitado em ferramentas de –> gerenciar recursos de visualização
avisos de segurança do MotW
avisos de segurança da Marca da Web (MotW) agora estão integrados à funcionalidade de confiança geral.
O Visual Studio mostrará um aviso de segurança quando detectar que você está tentando abrir o conteúdo marcado com o identificador MotW (Marca da Web).
Esse novo aviso relacionado à confiança transmite os riscos de abrir conteúdo de fontes potencialmente inseguras, como downloads na Internet.
caixa de diálogo
Você pode modificar a experiência de confiança padrão acessando a de Configurações de Confiança do em Tools > Options > Environment.
![]()
novos modelos de IA do Teams Toolkit
o Kit de Ferramentas do Teams integra novos modelos de aplicativo do Teams de IA.
O Teams Toolkit adiciona três novos modelos de aplicativo de IA do Teams:
Eles são:
![]()
bot básico de chat de IA - seus próprios copilots no Microsoft Teams criados com a Biblioteca de IA do Teams
chat com seu de dados – um modelo de chatbot inteligente com conhecimento de domínio da fonte de dados personalizada.
O Teams Toolkit agora permite que você crie o Custom Copilot, que é um chatbot alimentado por IA com funcionalidade RAG que pode entender a linguagem natural e recuperar dados de domínio para responder a perguntas específicas do domínio. Esse modelo dá suporte para acessar seus dados personalizados no aplicativo Copilot Personalizado.
Ao selecionar este modelo, você pode selecionar duas maneiras de se conectar com seus dados:
um. do Azure AI Search: seu chatbot pode acessar dados no serviço de pesquisa de IA do Azure e usá-los em conversa com os usuários.
b. fonte de dados personalizada: você pode adicionar qualquer fonte de dados que desejar ao aplicativo Copilot Personalizado, por exemplo, sistema de arquivos ou banco de dados vetor.
agente de IA - um agente de IA no Teams que pode tomar decisões e executar ações com base no raciocínio llm.
Experimente os novos modelos de aplicativo de IA para iniciar seu percurso de IA no Teams!
Copiar arquivos entre instâncias 📣
Agora você pode copiar arquivos e pastas do Gerenciador de Soluções em uma instância do Visual Studio para outra.
Estamos empolgados em introduzir um recurso altamente solicitado no Visual Studio! Agora você pode copiar e colar diretamente arquivos de código e pastas entre diferentes instâncias do Visual Studio usando o Gerenciador de Soluções. Basta selecionar o arquivo ou pasta desejado, usar Ctrl+C ou Ctrl+X, alternar para outra instância do Visual Studio e usar Ctrl+V para incluir esses arquivos ou pastas em sua nova solução. Todas as alterações serão refletidas com precisão no sistema de arquivos.
Além de copiar e colar, você também pode arrastar os arquivos e pastas de uma instância do Visual Studio para outra.
![]()
Anteriormente, essa funcionalidade estava disponível apenas para alguns tipos de projeto, mas agora a expandimos para incluir todos os principais tipos de projeto no Visual Studio.
📣 Consulte tíquete de recurso para compartilhar seus comentários e continuar a conversa.
Nuvem
Serviço de Aplicativo do Azure publicar atualizações de segurança
Publicação no Serviço de Aplicativo do Azure com segurança usando atualizações de segurança integradas.
As diretrizes de publicação do Serviço de Aplicativo do Azure aconselham os clientes a desabilitar a Autenticação Básica e habilitar a publicação por meio da autenticação integrada.
de Publicação Segura das Ferramentas do Azure
O novo recurso no Visual Studio 2022 desabilita a Autenticação Básica e permite a segurança integrada para publicação no Serviço de Aplicativo do Azure. Isso garante que as credenciais de publicação sejam tratadas com segurança, reduzindo os riscos associados à Autenticação Básica.
Ao publicar em um Serviço de Aplicativo do Azure que tenha a Autenticação Básica habilitada (o que não recomendado), os usuários verão a opção Ativar Autenticação Básica e ela será desmarcada por padrão. Os clientes que precisam manter a Autenticação Básica podem marcar a caixa, mas considerando que a recomendação é desabilitar a Autenticação Básica, isso é desmarcado por padrão. Portanto, você iniciar uma segura se esta for a primeira vez que você publicar ou obter seguro depois de passar pelo processo de publicação depois de atualizar o Visual Studio.
![]()
Se você criou o Aplicativo Web recentemente por meio do portal ou de qualquer versão futura do Visual Studio, a Autenticação Básica será desabilitada por padrão. Para qualquer aplicativo Web que já tenha a Autenticação Básica desabilitada, contornamos inadvertidamente tornando o Aplicativo Web menos seguro desabilitando completamente a caixa de seleção, para que você permaneça seguro.
habilitado para publicação segura das Ferramentas do Azure
suporte do Azure WebJobs Linux 📣
Publicação no Azure WebJobs no Linux agora é compatível com a publicação com o botão direito do mouse no Visual Studio.
Há suporte para aplicativos de console do .NET 5.0+ multiplataforma no Azure WebJobs Linux e, agora, você também pode clicar com o botão direito do mouse em publicar seu código no Azure WebJobs no Linux do Visual Studio!
caixa de diálogo Publicar
de destino do Linux
📣 Consulte tíquete de recurso para compartilhar seus comentários e continuar a conversa.
de consumo flex do Azure Functions
Publicar no plano de hospedagem de Consumo flex do Azure, atualmente em Versão Prévia.
Se você estiver tentando o novo plano de hospedagem de Consumo Flex do Azure Functions, atualmente em Versão Prévia, poderá clicar com o botão direito do mouse em publicar no Flex do Visual Studio.
O Consumo Flex estenderá ainda mais a funcionalidade de seus aplicativos e fornecerá o seguinte:
- Integração de rede virtual sem custo adicional
- Dimensionamento rápido e previsível com opção de tamanho da instância e controle de simultaneidade por instância
- Sem servidor com escala para zero e você paga apenas por instâncias enquanto elas estão ativas
- Mitigação de inicialização a frio com o recurso de instâncias always ready opcionais
Saiba mais sobre o Consumo Flex na postagem do blog de comunicado ou documentação e experimente um de nossos exemplos de .
![]()
de atualização de segurança dos Serviços Conectados
tornando seus aplicativos e experiências de desenvolvimento mais seguros.
Nesta atualização aos Serviços Conectados, agora você pode conectar o código do projeto aos recursos do Azure, como o Armazenamento do Azure, sem a necessidade de segredos ou cadeias de conexão em seu código ou configuração.
Agora, você dará um nome à sua conexão, os pontos de extremidade são persistidos na configuração em vez da cadeia de conexão completa. Isso significa menos segredos no disco, portanto, o tempo de desenvolvimento será mais seguro por padrão e sofrerá menos erros ao confirmar segredos para o controle do código-fonte.
de diálogo do Armazenamento do Azure
Também estamos usando os SDKs mais recentes do Azure, portanto, você obterá suporte para se conectar aos recursos do Azure usando o logon do Visual Studio (ou da CLI do Azure) em vez de se conectar por meio de uma cadeia de conexão. Ao executar localmente, seu código usará sua credencial de logon para acessar os recursos. Ao executar no Azure, o SDK do Azure usará a identidade gerenciada do serviço de aplicativo para acessar os recursos.
Os Serviços Conectados configuram tudo para você e injetam o código apropriado para usar a identidade integrada em vez de segredos. Durante a publicação, seu aplicativo será configurado com a identidade apropriada e as funções necessárias para acessar os recursos.
Área de trabalho
ferramentas MSIX aprimoradas para aplicativos UWP no .NET 9 📣
Visual Studio agora faz referência às novas ferramentas MSIX de projeto único autônomo para empacotar aplicativos UWP no .NET 9.
Na versão prévia inicial de suporte UWP para .NET 9, contamos com o WindowsAppSDK para fornecer as ferramentas MSIX para empacotar aplicativos usando a configuração de projeto único (em vez de usar um projeto de Empacotamento de Aplicativos do Windows, ou seja, um arquivo .wapproj). Isso introduziu vários problemas, sendo o principal deles que a dependência transitiva WebView2 do WindowsAppSDK também foi adicionada automaticamente a todos os aplicativos UWP, mesmo quando não necessário.
Agora separamos totalmente as ferramentas MSIX de projeto único e a publicamos como um novo pacote NuGet autônomo: microsoft.Windows.SDK.BuildTools.MSIX. Isso inclui tudo o que é necessário para criar, implantar e executar aplicativos UWP no .NET 9, bem como gerar pacotes MSIX para publicar na Microsoft Store ou sideload. A ferramenta UWP no .NET 9 no Visual Studio adicionará automaticamente essas duas referências de pacote quando necessário:
de ferramentas MSIX
Isso remove totalmente a dependência transitiva do WebView2 e o erro de build que estava presente para novos projetos em versões prévias anteriores ao não definir manualmente a propriedade WindowsSdkPackageVersion no arquivo .csproj. Com essa alteração, novos projetos serão compilados e executados sem a necessidade de alterações adicionais!
📣 Consulte tíquete de recurso para compartilhar seus comentários e continuar a conversa.
de pesquisa de componentes WinUI aprimorados
aprimorar a configuração do projeto WinUI com uma pesquisa aprimorada do Instalador do Visual Studio, simplificando o local do componente para desenvolvedores.
Simplifique ainda mais a configuração do projeto WinUI com nossa atualização mais recente do instalador do Visual Studio! Os desenvolvedores agora podem localizar rapidamente componentes relacionados ao WinUI, eliminando a frustração anterior de navegar por um resultado de pesquisa vazio. Esse aprimoramento simplifica a configuração do ambiente de desenvolvimento, permitindo uma experiência de usuário mais intuitiva e eficiente.
![]()
Abra o Instalador do Visual Studio, vá para componentes individuais guia e pesquise palavras-chave relacionadas ao WinUI (WinUI, WinRT)!
suporte ao SDK do .NET 9 para 📣
UWPVisual Studio agora inclui o SDK do .NET 9 com suporte UWP pronto para uso.
Uma das etapas necessárias para testar o UWP no .NET 9 na versão prévia inicial foi instalar um build noturno do SDK do .NET 9. Com essa nova versão do Visual Studio, isso não é mais necessário.
O Visual Studio agora inclui o SDK do .NET 9, que tem todo o novo suporte para UWP no .NET 9 (especificamente, lógica para fazer referência às projeções de XAML UWP e configurar o CsWinRT para tipos de projeto para aplicativos XAML UWP). Agora você pode compilar e executar o UWP em projetos do .NET 9 com o SDK do .NET instalado automaticamente com o Visual Studio.
📣 Consulte tíquete de recurso para compartilhar seus comentários e continuar a conversa.
.csproj simplificado para 📣
UWPUseUwpTools agora é definido automaticamente pelo Visual Studio para projetos UWP modernos no .NET 9.
Aplicativos e bibliotecas UWP usando o .NET 9 costumavam exigir duas propriedades em seus arquivos .csproj:
UseUwp
, que configura o SDK do .NET para aplicativos XAML UWP eUseUwpTools
, o que permite que todas as novas ferramentas no Visual Studio criem e executem aplicativos XAML UWP.A propriedade
UseUwpTools
agora é definida automaticamente pelo Visual Studio quandoUseUwp
é definida, para tornar o .csproj menos detalhado no cenário comum. Para cenários avançados, ainda é possível recusar desabilitando manualmenteUseUwpTools
.📣 Consulte tíquete de recurso para compartilhar seus comentários e continuar a conversa.
RIDs para UWP no .NET 9 corrigidos 📣
bibliotecas de classes UWP no .NET 9 defina corretamente os RIDs como os valores corretos para AOT Nativo.
Corrigimos um bug nas ferramentas APPX para bibliotecas de classes UWP (e componentes WinRT) no .NET 9, que aplicava os identificadores de runtime do UWP no .NET Native por padrão (ou seja, usando o prefixo
win10-
e incluindo plataformas que não têm mais suporte, como arm).As ferramentas APPX agora definirão os RIDs corretos para projetos do .NET 9 por padrão:
win-x86;win-x64;win-arm64
. Ainda é possível especificá-los manualmente, se desejado.📣 Consulte tíquete de recurso para compartilhar seus comentários e continuar a conversa.
criação de projeto UWP fixa 📣
Corrigimos o Assistente de Modelo Universal que estava causando não mostrar mais uma caixa de diálogo de erro ao criar novos projetos UWP no .NET 9.
Se você estiver usando o versão prévia do VSIX com os novos modelos de projeto para UWP no .NET 9, talvez tenha notado que uma caixa de diálogo de erro estava aparecendo corretamente ao criar um novo projeto. Isso foi especialmente problemático ao criar uma nova solução, pois o Visual Studio não a abriria corretamente após a criação do projeto. Esse problema já foi resolvido e a criação de novos projetos direcionados à UWP no .NET 9 agora funcionará corretamente.
📣 Consulte tíquete de recurso para compartilhar seus comentários e continuar a conversa.
Teia
variáveis de solicitaçãoem arquivos HTTP 📣
Os arquivos HTTP agora dão suporte a variáveis de solicitação. É aí que você pode enviar uma solicitação e, em seguida, usar dados da resposta ou solicitação em solicitações futuras.
Ao trabalhar com arquivos HTTP, um cenário comum é chamar um ponto de extremidade, tirar um valor da resposta e enviar uma solicitação subsequente. Por exemplo, você pode chamar um ponto de extremidade para autenticar um usuário e, em seguida, em chamadas posteriores, você pode passar o token que foi retornado do ponto de extremidade de logon. Antes desta versão, isso não era possível no Visual Studio. No snippet abaixo, você pode ver um exemplo de como isso funciona em um arquivo HTTP.
# @name login POST {{TodoApi_HostAddress}}/users/token Content-Type: application/json { "username": "{{myusername}}", "password": "{{mypassword}}" } ### GET {{TodoApi_HostAddress}}/todos Authorization: Bearer {{login.response.body.$.token}} ###
No snippet acima, há duas solicitações, a primeira chamada para o ponto de extremidade
/users/token
para autenticar o usuário. Imediatamente acima da linha de solicitação, você verá o comentário# @name login
. Essa sintaxe fornece à solicitação um nome (login
nesse caso) e a configura como uma Variável de Solicitação. Quando a solicitação é enviada, você pode acessar valores da resposta ou solicitação, em qualquer solicitação futura enviada desse arquivo HTTP. Como essa é uma solicitação de logon, você deve ter cuidado para proteger seus segredos. No Visual Studio, temos suporte para acessar segredos de maneira segura. Consulte esta seção nos documentos para obter mais informações sobre como lidar com segredos.A segunda solicitação chama um ponto de extremidade autenticado,
/todos
, que retornará os itens detodo
para esse usuário. Na solicitação, o token é passado como um cabeçalho com a linha.Authorization: Bearer {{login.response.body.$.token}}
O ponto de extremidade
/users/token
retorna uma resposta no JSON. O token é extraído com uma expressão JSON Path,$.token
, no corpo da resposta. Se você estiver usando um ponto de extremidade que retorna XML, em vez de uma expressão JSON Path, você poderá passar uma expressão XPath. O suporte no Visual Studio foi inspirado na extensão de OSS existente para de cliente REST que está disponível para o Visual Studio Code. Você pode saber mais sobre variáveis de solicitação lá. Adicionaremos documentação em breve para discutir esse suporte com muito mais detalhes.📣 Consulte tíquete de recurso para compartilhar seus comentários e continuar a conversa.
suporte ao Vitest em JavaScript e TypeScript 📣
Dicas de inlay doAo usar projetos JavaScript e TypeScript, agora você pode criar casos de teste com o Vitest.
Em projetos JavaScript e TypeScript (JSTS), projetos que têm a extensão .esproj, adicionamos suporte para descobrir e executar testes criados com Vitest. Para começar a usar os testes do Vitest, em um projeto JSTS, adicione o pacote vitest usando o npm no Gerenciador de Soluções e modifique o arquivo de projeto para que as propriedades a seguir tenham as propriedades a seguir declaradas.
<JavaScriptTestRoot>test\</JavaScriptTestRoot> <JavaScriptTestFramework>Vitest</JavaScriptTestFramework>
Verifique se o valor de
JavaScriptTestRoot
tem o caminho relativo correto para onde os arquivos de teste estão localizados.Adicione seus testes à pasta correta e crie o projeto/solução. Depois disso, você deverá ver os casos de teste no Gerenciador de Testes.
![]()
No Gerenciador de Testes, você pode ver os diferentes casos de teste descobertos e executar os casos de teste.
Ainda não adicionamos suporte para depuração, mas adicionaremos esse suporte em breve. Outro problema conhecido é quando você clica duas vezes em um caso de teste no Gerenciador de Testes, ele leva você para a primeira linha do arquivo em que o caso de teste é definido. Também melhoraremos essa experiência.
📣 Consulte tíquete de recurso para compartilhar seus comentários e continuar a conversa.
para mais idiomas 📣
suporte à Dica de Inlay foi adicionado ao JavaScript, TypeScript, Python e Razor, bem como a uma configuração para controlar seu comportamento.
As dicas de inlay mostram informações adicionais sobre o código-fonte que são renderizadas embutidas. Isso geralmente é usado para mostrar tipos inferidos, nomes de parâmetro e outras informações implícitas do código diretamente em seu editor.
Adicionamos suporte para mostrar Dicas de Inlay em JavaScript, TypeScript, Razor e Python. Também adicionamos uma nova configuração para que você possa personalizar o comportamento de dicas entre esses idiomas. Essa configuração ainda não se aplica a C# e C++. Para habilitar dicas de inlay para esses idiomas, você pode usar a nova configuração no Tools > Options > Text Editor > All Languages > Inlay Hints. Você pode ver a nova opção na imagem a seguir.
configuração global
Há três valores diferentes para Dicas de Inlay.
- Always: Sempre mostrar as Dicas de Inlay.
- Ao pressionar Alt+F1: mostra apenas dicas de inlay enquanto Alt e F1 são pressionados. Esse é o valor padrão.
- Nunca: dicas de inlay nunca são mostradas.
Para JavaScript e TypeScript, há uma página de opções adicionais para configurar o comportamento de Dicas de Inlay. Isso pode ser encontrado em Tools > Options > Text Editor > JavaScript/TypeScript > Advanced > General.
Essas opções são mostradas na imagem a seguir.
![]()
Por padrão, todas essas opções estão desabilitadas, você deve habilitar as dicas que você está interessado em exibir para arquivos JavaScript e TypeScript. Em uma atualização futura, podemos alterar os valores padrão para essas opções. Na imagem abaixo, você pode ver um arquivo JavaScript que mostra Dicas de Inlay.
dicas de inlay
Na imagem anterior, as Dicas de Inlay mostradas são as caixas cinza com
: number
para indicar o tipo da variável.📣 Consulte tíquete de recurso para compartilhar seus comentários e continuar a conversa.
📣
de ambiente compartilhado de arquivos HTTPEm arquivos de ambiente HTTP, adicionamos suporte para compartilhar variáveis entre ambientes.
Ao usar arquivos HTTP no Visual Studio, você pode definir ambientes para que você possa criar configurações diferentes para teste de API. Anteriormente, não era possível compartilhar uma variável nesses ambientes. Adicionamos suporte para uma nova entrada,
$shared
, no arquivo de ambiente que permite definir valores padrão para variáveis que estão disponíveis em todos os ambientes.Por exemplo, considere o arquivo de ambiente (http-client.env.json) abaixo.
{ "$shared": { "HostAddress": "https://localhost:7293" }, "dev": { "username": "sayedha" }, "dev2": { "username": "madsk" }, "staging": { "username": "staginuser", "HostAddress": "https://sayedrest.example.com" } }
Definimos os valores compartilhados em
$shared
acima, que consiste na variávelHostAddress
que é definida comolocalhost:7293
.Dos três ambientes definidos, nenhum ambiente de desenvolvimento especificou o valor para
HostAddress
mas o preparo tem um valor para ele.Quando você usa o ambiente
dev
oudev2
, o valor paraHostAddress
virá de$shared
, pois esses ambientes não têm um valor paraHostAddress
. Ao usar o ambiente de preparo, o valor paraHostAddress
será definido comohttps://sayedrest.example.com
.📣 Consulte tíquete de recurso para compartilhar seus comentários e continuar a conversa.
Dados
projetos SQL no estilo SDK no SSDT 📣
Agora você pode usar o formato de arquivo de projeto no estilo SDK em seus projetos do SQL Server Data Tools.
Essa atualização adiciona projetos SQL com base no SDK do Microsoft.Build.Sql, que traz suporte multiplataforma e referências de pacote aprimoradas para projetos do SSDT (SQL Server Data Tools). Com arquivos de projeto menos detalhados e referências de banco de dados a pacotes NuGet, as equipes podem colaborar com mais eficiência em bancos de dados grandes em um único projeto ou compilar vários conjuntos de objetos de vários projetos.
![]()
As implantações de banco de dados de um projeto Microsoft.Build.Sql podem ser automatizadas em ambientes Windows e Linux em que a ferramenta dotnet Microsoft.SqlPackage publica o artefato de build (.dacpac) do projeto SQL. Saiba mais sobre a visualização de projetos SQL no estilo SDK e DevOps para SQL.
O SDK do projeto Microsoft.Build.Sql é de software livre e desenvolvido em do GitHub.
Instale o componente de versão prévia do SSDT mais recente no instalador do Visual Studio para usar os projetos SQL no estilo SDK em sua solução.
de recursos do SSDT de versão prévia
📣 Consulte tíquete de recurso para compartilhar seus comentários e continuar a conversa.
C++
definir argumentos de linha de comando do C++
Uma nova maneira de definir seus argumentos de linha de comando diretamente da barra de ferramentas.
Defina rapidamente seus argumentos de linha de comando para seu projeto C++ com o novo item da barra de ferramentas Definir Argumentos. Essa caixa de combinação permite que você defina seus argumentos de linha de comando diretamente da barra de ferramentas, para que você possa alterar rapidamente seus argumentos. Quando você executar seu projeto, todos os argumentos inseridos na caixa serão passados.
Esse componente da barra de ferramentas será exibido por padrão se você tiver desenvolvimento de jogos com carga de trabalho de C++ instalada. Se você não o vir, poderá adicioná-lo clicando com o botão direito do mouse na barra de ferramentas e selecionando Definir Argumentos.
Observação: este recurso está disponível somente para projetos do Unreal Engine. Projetos gerais do C++ terão suporte em versões futuras.
![]()
explicações de exibição do Build Insights
Saiba como usar cada guia do Build Insights por meio de um link recém-adicionado à documentação.
Agora você pode ver uma breve descrição sobre como cada guia do Build Insights pode ser usada, juntamente com um link para a documentação para obter uma explicação detalhada.
![]()
ajustes de caminho do Build Insights
Obter uma exibição mais clara do arquivo no Build Insights, confira o caminho completo em foco.
Ocultamos caminhos completos e relativos para reduzir a desordem. Para ver caminhos completos, basta passar o mouse sobre o arquivo. Você também verá uma nova coluna Nome do Arquivo para arquivos e Unidades de Tradução, exibida por padrão para ajudá-lo a identificar rapidamente os arquivos sem analisar caminhos longos.
de ajustes de caminho do Build Insights
abrir pasta para
de uproject do Mecanismo UnrealUma nova maneira de abrir seu uproject.
Adicionamos um ponto de entrada adicional para abrir o uproject do Unreal Engine com o suporte de uproject do Visual Studio. Agora você pode abrir seu uproject diretamente no menu Arquivo selecionando projeto Abrir > Unreal Engine.... Isso abrirá seu projeto do Mecanismo Unreal no Visual Studio.
Para obter mais informações sobre como usar esse recurso, consulte Edição Direta .uproject no Visual Studio.
de Pasta Aberta do Mecanismo Unreal
de assinatura de alteração aprimorada
Agora você pode alterar assinaturas com nossa interface C++ aprimorada.
Atualizamos a interface Alterar Assinatura para C++. Agora você pode adicionar, remover e reorganizar parâmetros na seção de configuração de parâmetro. Além disso, você pode alterar a ordem deles selecionando-as e arrastando-as para uma nova posição.
Os métodos de acesso permanecem os mesmos: pressione Ctrl+. disparar o menu Ações Rápidas e Refatorações do e selecionar Alterarde Assinatura.
de assinatura de alteração aprimorada
Principais correções de bug relatadas pelo usuário
- Editor do C# não consegue localizar controles definidos no arquivo xaml
- comando GIT (sincronização, pull, push) e lista de ramificações ausentes da barra de status
- VSSDK/CPS/Extensibilidade: o carregamento de imagens em extensões do VS por meio do .imagemanifest é interrompido no vs2022
- Backspace etc. às vezes, pare de funcionar
- Gerenciador de Recursos não pode abrir arquivos resx
- Redefinir todas as configurações sempre resulta em um erro
- VS2022 17.10.0 Versão Prévia 7: Erro interno do compilador
- arquivos Javascript perdem codificação de cores após 10.000 linhas de código
- Usar std::format em um módulo requer incluir o cabeçalho de formato em arquivos .cpp usando esse módulo
- erro de sintaxe do C++ após a atualização para o Visual Studio 17.11.0
- não é possível mover um bloco de código para cima e para baixo após a atualização do VS
- geração de cache do CMake em um host linux remoto falha em uma consulta ctest
- erro nos pipelines do Azure DevOps com VSTest@2
- Não é possível adicionar a conta da Apple (CONTA DO VS 2022, Enterprise)
📣 Veja a lista completa de todos os [correções de bug] relatados pelo usuário[bugfixes] que entraram nesta versão.
Problemas conhecidos
- O erro "Falha ao exportar o certificado" ocorre ao tentar depurar um projeto Web do ASP.NET Core com HTTPS habilitado e usando o perfil de depuração WSL. Isso ocorre devido a alteração significativa: a exportação de certificado de desenvolvimento não cria maisde pasta.
Isso pode ser trabalhado criando a pasta
%appdata%\ASP.NET\Https
antes da depuração.
Versão 17.12.6
lançado em 11 de março dede 2025
Principais correções de bug | Da comunidade |
---|---|
Correção de um problema de inicialização incorreto para determinados structs com membros de tamanho zero. | |
O Sanitizer de Endereço (ASan) agora se vincula ao OneCoreUAP_apiset.lib , uma biblioteca de guarda-chuvas, em vez de diretamente às bibliotecas do Win32. Isso é para tornar o ASan mais portátil em várias versões e dispositivos do sistema operacional. Se o código depender transitivamente dos módulos Win32 trazidos pelo ASan (não recomendado), isso pode ser uma alteração significativa. Nesses casos, recomendamos vincular seu programa diretamente às bibliotecas de dependência do Win32 necessárias. |
de tíquete de Comentários do |
Correção de um problema na renomeação embutida em C# em que todo o identificador foi selecionado quando as sugestões de renomeação estavam disponíveis. Isso substituiria a seleção do desenvolvedor e poderia levar ao mistyping, especialmente se o desenvolvedor movesse o cursor dentro da interface de renomeação embutida. Agora, as sugestões de renomeação do Copilot não alterarão a seleção dentro da interface de renomeação embutida. | de tíquete de Comentários do |
Corrigido um problema em que as DLLs instrumentadas descarregadas durante a execução do teste de entrada do fuzzer causavam um erro falso positivo do ASan e falha. | de tíquete de Comentários do |
x86 ICE novamente após atualizar dados de otimização PGO | de tíquete de Comentários do |
Correção de um problema em que os clientes com hardware gráfico Intel podiam experimentar rolagem retardo no editor depois de disparar uma visualização de imagem ao passar o mouse. | de tíquete de Comentários do |
VS2022 Professional – Não é possível entrar na conta m | de tíquete de Comentários do |
Removeu a lista suspensa de argumentos de linha de comando para atenuar um travamento de interface do usuário na experiência do Mecanismo Unreal. | |
Projetos blazor quebram o Intellisense 17.12.2 | de tíquete de Comentários do |
Avisos de segurança endereçados | CVE |
---|---|
Vulnerabilidade de elevação de privilégio do Visual Studio | CVE-2025-25003 |
Vulnerabilidade de elevação de privilégio do .NET | CVE-2025-24070 |
Vulnerabilidade de elevação de privilégio do instalador do Visual Studio | CVE-2025-24998 |
Versão 17.12.5
lançado em 11 de fevereiro dede 2025
Principais correções de bug | Da comunidade |
---|---|
Resolveu um problema em que, às vezes, a ferramenta uso da CPU falhava em mostrar resultados, mesmo que ela capturasse dados anteriormente. | |
A Análise de Código do MSVC agora pode detectar o uso de ponteiros pendentes que apontam para recursos em objetos temporários que são destruídos quando usados na lista de inicializadores de uma matriz. | de tíquete de Comentários do |
Erro com String::Format no projeto C++ CLR Class Library (.NET) | de tíquete de Comentários do |
Regressão em 17.12.0: Falha de substituição é um erro C3699 ao compilar com /CLR | de tíquete de Comentários do |
Atualizado o SDK do Windows 11 (10.0.26100.0) instalado pelo Visual Studio para a compilação de manutenção de janeiro de 2025. | |
Correção de um bug no otimizador que leva a um codegen incorreto e foi visto afetando a função std::sort quando chamado de uma coroutina. |
Versão 17.12.4
lançado em 14 de janeiro dede 2025
Principais correções de bug | Da comunidade |
---|---|
Abordou uma incompatibilidade entre o Live++ (uma ferramenta de recarregamento frequente do C++ de terceiros) e o Visual Studio 2022. | de tíquete de Comentários do |
Endereçado a um travamento em All-In-One Search (Ctrl+T, Ctrl+Q). | de tíquete de Comentários do |
O Depurador do Visual Studio não pode exibir valores na janela 'Locais'. | de tíquete de Comentários do |
Corrigido um bug que fazia com que o VS falhasse e fechasse imediatamente ao abrir o Gerenciador de Pacotes NuGet se o painel de detalhes do lado direito fosse dimensionado como muito pequeno. | de tíquete de Comentários do |
Correção de um problema em que passar o mouse sobre um arquivo do Docker poderia travar o VS. | |
Correção de um problema com inicialização incorreta para determinados structs com membros de tamanho zero. | |
Correção de um problema para destinos x86 em que os registros de quadro usados durante as coroutinas podem não ser recarregados corretamente. | de tíquete de Comentários do |
O VS agora inclui o MAUI 8.0.100 (SR10); MAUI 9.0.14 (SR1.4) | |
Correção da cintilação de cor da sintaxe ao rolar por https://github.com/dotnet/roslyn/pull/75796|| |
Versão 17.12.3
lançado em 3 de dezembro derd, 2024
Principais correções de bug | Da comunidade |
---|---|
Erros do NuGet após a atualização do VS v17.11.6 para v17.12 com o .NET 9. | de tíquete de Comentários do |
Mensagens privadas do Unity marcadas incorretamente como IDE0051 não usadas. | de tíquete de Comentários do |
O Intellisense parou de funcionar no projeto do Word C++. | de tíquete de Comentários do |
Correção de um problema em que os caracteres poderiam ser duplicados ao digitar em um arquivo que contém um idioma inserido. | de tíquete de Comentários do |
Correção de um problema no qual resolver conflitos de mesclagem em arquivos .razor e arquivos .cshtml resultaria em uma janela vazia. | de tíquete de Comentários do |
O Azure Devops Permalink do Visual Studio 2022 não funciona. | de tíquete de Comentários do |
Corrigido um problema em que o Visual Studio falhava se a variável de ambiente DOTNET_SYSTEM_GLOBALIZATION_INVARIANT fosse definida como 1. | de tíquete de Comentários do |
Correção do erro de inicialização do criador de perfil de desempenho para projetos C++. | de tíquete de Comentários do |
Versão 17.12.2
Lançado novemeber 26th, 2024
Principais correções de bug | Da comunidade |
---|---|
O C++ IntelliSense não exibe mais erros para projetos que tinham o IntelliSense funcionando no Visual Studio 17.11. | de tíquete de Comentários do |
O processo do indexador Copilot não bloqueia mais os arquivos. | de tíquete de Comentários do |
Correção de uma falha do compilador no código C++/CLI que tem como destino o .NET Core e usa matrizes de param. | de tíquete de Comentários do |
notas de versão do .NET para iOS/tvOS/macOS/macCatalyst | |
Após a atualização do Windows KB5041580, o Visual Studio falha silenciosamente ao abrir uma janela do editor de mesclagem. | de tíquete de Comentários do |
[LKG18] Algumas funções encapsuladas por redução têm informações de desenrolamento incompletas em seus fragmentos secundários. | de tíquete de Comentários do |
Erro interno do compilador C1001 para compilação arm64. | de tíquete de Comentários do |
SSDT falhando com erro crítico encontrado no VS17.12. | de tíquete de Comentários do |
Versão 17.12.1
Lançadas novemeber 19th, 2024
Principais correções de bug | Da comunidade |
---|---|
Correção do problema da cintilação de cor da sintaxe ao rolar por https://github.com/dotnet/roslyn/pull/75796 | |
Esta versão inclui atualizações para manter a conformidade com as leis internacionais de idioma. |
De todos nós da equipe, obrigado por escolher o Visual Studio. Se você tiver alguma dúvida, entre em contato conosco em do Twitter ou da Comunidade de Desenvolvedores.
codificação feliz!
a equipe do Visual Studio
Nota
Essa atualização pode incluir um novo software da Microsoft ou de terceiros licenciado separadamente, conforme definido no 3rd Party Notices ou em sua licença de acompanhamento.