Partilhar via


Configurar Editar e Continuar (C#, VB, C++)

Você pode desativar ou ativar o Hot Reload, anteriormente chamado Editar e Continuar, a partir do menu Ferramentas>Opções do Visual Studio durante o design. O Hot Reload funciona apenas em compilações de depuração. Para obter mais informações, consulte Hot Reload.

Para C++ nativo, o Hot Reload requer o uso da /INCREMENTAL opção. Para obter mais informações sobre os requisitos de recursos em C++, consulte esta postagem de blog e Editar e continuar (C++).

Observação

Se o IntelliTrace estiver ativado e você coletar eventos do IntelliTrace e informações de chamada, o Hot Reload será desativado. Para obter mais informações, consulte IntelliTrace.

Habilitar e configurar o Hot Reload

Pode configurar o Hot Reload selecionando Configurações no menu suspenso do Hot Reload.

Captura de ecrã a mostrar a configuração do Hot Reload.

Ou abra o painel Ferramentas>Opções e ajuste as opções na seção Todas as Definições>Debugging>.NET/C++ Hot Reload. As seguintes opções estão disponíveis:

  • Habilitar Hot Reload: use o recurso Hot Reload com código .NET e C++ quando seu aplicativo estiver sendo executado com o depurador anexado (F5).

  • Aplicar automaticamente as alterações ao continuar (somente nativo): o Visual Studio compila e aplica automaticamente quaisquer alterações de código pendentes feitas ao continuar o processo a partir de um estado de interrupção. Se não estiver selecionado, você poderá optar por aplicar alterações usando o item Aplicar alterações de código no menu Depurar .

  • Avisar sobre código obsoleto (somente nativo): Receba avisos sobre código obsoleto.

  • Ativar quando não estiver depurando: habilita o Hot Reload quando seu aplicativo é executado sem o depurador anexado (Ctrl + F5).

  • Aplicar ao salvar arquivo: aplica alterações quando o arquivo é salvo.

  • Verbosidade do log: defina o nível de registo quando o Hot Reload estiver ativado: Mínimo, Detalhado ou Diagnóstico.

Captura de tela das configurações do .NET C++ Hot Reload no Visual Studio.

Ou abra a caixa de diálogo Ferramentas>Opções e ajuste as opções na seção Debugging>.NET/C++ Hot Reload. As seguintes opções estão disponíveis:

  • Ativar Hot Reload: Ativa o Hot Reload ao iniciar com o depurador anexado (F5).

  • Ativar Hot Reload ao iniciar sem depuração: Ativa Hot Reload ao iniciar sem o depurador anexado (Ctrl+F5).

  • Aplicar Hot Reload ao Salvar Arquivo: Aplica alterações de código quando você salva o arquivo.

  • Verbosidade de log: Filtra a quantidade de informações exibidas na janela de saída do Hot Reload.

Captura de tela das configurações do .NET Hot Reload.

Para C++, você pode definir opções extras abrindo Tools>Options>Debugging>General. Certifique-se de que Ativar Hot Reload está selecionado e defina as outras opções:

  • Aplicar alterações em continuar (somente nativo): o Visual Studio compila e aplica automaticamente quaisquer alterações de código pendentes feitas ao continuar o processo a partir de um estado de interrupção. Se não estiver selecionado, você poderá optar por aplicar alterações usando o item Aplicar alterações de código no menu Depurar .

  • Avisar sobre código obsoleto (somente nativo): Receba avisos sobre código obsoleto.

Para o .NET Hot Reload, você também pode controlar se o Hot Reload está disponível no nível do projeto modificando o arquivo launchSetting.json do seu projeto .NET 6+ e definindo hotReloadEnabled como false.

Exemplo:

{
  "profiles": {
    "Console": {
      "commandName": "Project",
      "hotReloadEnabled": false
    }
  }
}

Configurar a reinicialização automática

O Hot Reload pode reiniciar automaticamente o processo do aplicativo quando uma alteração não suportada (também chamada de edição rude) é feita, em vez de encerrar toda a sessão de depuração. Para habilitar isso, edite o arquivo de projeto para adicionar a seguinte declaração de propriedade.

<PropertyGroup>
  <HotReloadAutoRestart>true</HotReloadAutoRestart>
</PropertyGroup>

Você também pode definir essa propriedade em um arquivo Directory.Build.props . A reinicialização automática funciona para tipos de projeto em que uma reinicialização rápida do processo é viável (por exemplo, alguns projetos Aspire ou web), para que você possa continuar a depuração com o mínimo de interrupção.

Este é um reinício baseado em processos. Por exemplo, se você estiver depurando vários projetos, somente os projetos alterados e quaisquer projetos dependentes serão reconstruídos e reiniciados.

Configurar Hot Reload para Razor

Ao cohospedar o compilador Razor dentro do processo Roslyn, editar um arquivo .razor durante o Hot Reload é mais rápido e eficiente. O cohosting também melhora a confiabilidade geral ao usar o Hot Reload.

Para habilitar a cohospedagem, selecione Ferramentas>Opções, e depois procure por cohost. Selecione ou desmarque a configuração Usar servidor Roslyn Cohost para Razor (requer reinicialização). Se você habilitar essa opção, reinicie o Visual Studio. Cohosting é ativado por padrão.

Parar alterações de código

Enquanto o Hot Reload estiver no processo de aplicação de alterações de código, você pode interromper a operação.

Atenção

Parar as alterações de código no código gerenciado pode produzir resultados inesperados. A aplicação de alterações ao código gerenciado é normalmente um processo rápido, portanto, raramente há necessidade de interromper as alterações de código no código gerenciado.

Para parar de aplicar alterações de código:

  • Escolha Parar de aplicar alterações de código no menu Depurar .

    Este item de menu é visível somente quando as alterações de código estão sendo aplicadas.

    Se você escolher essa opção, nenhuma das alterações de código será confirmada.