Como recarregar automaticamente o projeto .NET Core no Visual Studio 2019?

11

Tento recarregar automaticamente o ASP.NET Core Project do mesmo modo que o Angular com Node ou NPM.

Isso significa que estou mudando o código do .NET Core Project e salve. Esse tempo afeta automaticamente o navegador e recarrega automaticamente a página da web no navegador.

Akash Limbani
fonte
Não sei exatamente o que você quer dizer com recarregar, mas em geral você não pode alterar o código em tempo de execução.
Yasser Jarouf
@YasserJarouf, eu não estou falando No visual studio 2019.
Akash Limbani
Os projetos ASP.NET Core Angular já recarregam o código do lado do cliente - são Angular, não apenas same asAngular. O ASP.NET Core é usado para fornecer as APIs e as páginas que não são do SPA.
Panagiotis Kanavos
Quaisquer outras formas, como combinar o pacote npm de instalação com o projeto ASP.NET Core?
Akash Limbani

Respostas:

5

Eu acho que o relógio dotnet deve funcionar. Consulte a documentação no link, pois existem várias opções.

  1. Adicione Microsoft.DotNet.Watcher.Tools à seção de ferramentas do arquivo project.json
  2. Executar restauração dotnet
  3. Executar com o dotnet watch run
PrinceT
fonte
Mas, usando isso, não consigo recarregar automaticamente como o Angular. Se eu pressionar ctrl + s , dessa vez nenhuma ação funcionará no navegador. Obrigado por responder.
Akash Limbani 25/11/19
você precisa executar seu aplicativo usando o prompt de comando e adicionar detalhes do relógio no projeto. json
PrinceT 25/11/19
Ou você pode simplesmente usar o meu perfil de inicialização que forneci na minha resposta ..
GrowSing
Sim eu fiz isso. Verifico usando este comando dotnet watch run.
Akash Limbani 25/11/19
Você pode ver as alterações no console .. quando tenta executar .. consegue ver alguma coisa?
PrinceT 25/11/19
3

De acordo com esse requisito, precisamos executar o aplicativo principal .net, assim como o aplicativo Angular, carregando as páginas e o conteúdo automaticamente, sem atualização manual e incorporada.

Eu havia pesquisado e experimentado, em meus 7 anos de experiência, como desenvolvedor .net, trabalhando como recurso sênior na empresa de desenvolvimento ASP.NET, que o recarregamento automático não é possível no projeto principal do ASP.NET. No entanto, obtivemos sucesso: em nossa solução, estamos usando o dotnet watch, que monitora os arquivos de origem e, se um arquivo é alterado, encerra o aplicativo iniciado, reconstrói e publica o projeto e, em seguida, reinicia o aplicativo. atualize a página manualmente no navegador para obter as alterações feitas no aplicativo, não precisamos criar ou iniciar o projeto.

Etapas a seguir para usar o relógio asp.net:

1) Aplicativo principal do Create.Net.

2) Abra uma janela de comando na pasta do seu projeto da Web

3) Tipo dotnet watch run

4) Abra seu navegador e navegue até uma API ou página

5) Faça uma alteração no código fonte

6) Salve o arquivo

7) Volte ao navegador e atualize manualmente

8) Você deve ver a mudança refletida

Kristy Davis
fonte
Como fazer no Visual Studio 2019?
Akash Limbani 29/11/19
2

Você pode usar dotnet watch. Viz. Documentos

Criei um perfil de almoço personalizado para facilitar a execução no VS.

"Watch": {
  "executablePath": "dotnet.exe",
  "workingDirectory": "$(ProjectDir)",
  "commandLineArgs": "watch run",
  "launchBrowser": false,
  "launchUrl": "http://localhost:5000/",
  "environmentVariables": {
    "ASPNETCORE_ENVIRONMENT": "Development"
  }
}
GrowSing
fonte
Usando isso, não é recarregado automaticamente no navegador como o Angular.
Akash Limbani 25/11/19
Você pode executar o projeto Angular?
Akash Limbani 25/11/19
2

execute este comando no console do projeto

dotnet watch run

o mesmo funciona para o código do visual studio

Amir Dora
fonte
1

Você deve pensar triplo antes de avançar para esta opção. (1) Consome recursos. Como requer a construção automática, como pré-operação, do projeto modificado e, às vezes, de toda a solução. (Imagine uma solução Asp.net de tamanho médio a grande, composta de muitos projetos, construa-se para cada modificação realizada !! quanto tempo resta para a programação ??? !!) (2), como você sabe, o recarregamento da página consome muito tempo para o primeiro lançamento após uma compilação bem-sucedida !! ... Portanto, o tempo que você deseja obter com essa opção será desperdiçado várias linguagens de programação, especialmente baseadas em CLR (por exemplo, .NET Core). E, finalmente, (3) é esperado que seu projeto precise desenvolver amostras de teste que possam ser injetadas automaticamente na visualização para um melhor processo de automação, imagine como é difícil!

Em vez disso, tente testar sua unidade e, em seguida, espere que qualquer próxima modificação seja superficial e ocorra com baixa intensidade.

Se você não concorda com a minha proposta, sugiro o desenvolvimento de uma extensão do visual studio que recarregue melhor a página de destino em on-buildvez de um on-save-changesevento. Em seguida, Ctrl + bfará o trabalho!

Onde começar?

Eu desenvolvi um VSIX que monitora pastas para carregar automaticamente arquivos gerados específicos fora da interface do usuário do VS. verifique o código fonte para ter uma idéia sobre o gerenciamento de arquivos do projeto. ele gira na API EnvDTE, consulte este pedaço de código.

Além disso, verifique o projeto de origem a partir daqui

AbuDawood
fonte