Novidades no Rider

O Rider 2021.2 acompanha suporte aprimorado à linguagem C#, incluindo um monte de atualizações em análises de código, tipos de referência anuláveis e geradores de código fonte. Para desenvolvedores Web, este lançamento oferece suporte para endpoints do ASP.NET Core e depuração no lado do cliente para aplicações Blazor WebAssembly. Há também muitos mimos para desenvolvedores de jogos que usam o Unity e o Unreal Engine. E o assistente de boas-vindas agora permite importar configurações de outros IDEs, como o Visual Studio, o VS for Mac ou o Visual Studio Code.

Suporte para endpoints do ASP.NET Core

A nova janela de ferramentas Endpoints ajuda você a explorar e navegar até qualquer endpoint do ASP.NET Core no seu projeto que esteja registrado ou anotado com atributos [Route], [Http{Method}], ou [AcceptVerbs].

Inspecione a documentação do endpoint ou use a ação Jump to Source do controlador que implementa um endpoint. Trabalhe com Find Usages para localizar onde ele está registrado.

Use a guia HTTP Client para criar e enviar solicitações à sua aplicação. Isso é útil para testar APIs.

Teste sua API usando o plugin de especificações OpenAPI. Ele adiciona suporte ao Swagger UI para arquivos OpenAPI que você pode usar para gravar solicitações e inspecionar respostas.

No editor de código, você também receberá suporte de primeira classe:

  • Quando você usar HttpClient, a complementação de código sugerirá todos os URIs que podem ser resolvidos para ações em controladores anotados com os atributos [Route], [Http{Method}] ou [AcceptVerbs].
  • Você pode navegar facilmente entre os atributos de rota dentro de controladores e esses URIs usando Go to Declaration e Find Usages.
  • Renomear uma rota de atributo em um controlador afeta seus usos em URIs, e você pode até mesmo renomear uma rota diretamente da string de URI.

Saiba mais na postagem Uma maneira melhor de descobrir APIs com a nova janela Endpoints, no blog da JetBrains.

Depuração para o Blazor WebAssembly

A tão esperada depuração no lado do cliente para o Blazor WebAssembly chegou no Rider. Ela funciona para aplicações .NET 5.0 e .NET Core 3.1.

Follow the official Microsoft guide to set up WASM debugging. Em seguida, basta começar a depurar suas aplicações como de costume.

Para que ele funcione no Linux, você precisa instalar manualmente certificados de desenvolvimento de antemão, caso contrário, ele não funcionará. If you are using Ubuntu, you can follow this guide.

Rider supports the debugging proxy if either of these NuGet packages are installed: Microsoft.AspNetCore.Components.WebAssembly.DevServer or Microsoft.AspNetCore.Components.WebAssembly.Server. No momento, não oferecemos suporte a proxies de depuração personalizados para aplicações Blazor WASM.

Suporte para linguagens

Análises de código C#

Você usa variáveis temporárias para trocar valores de variáveis? Agora, existe uma maneira mais elegante de fazer isso! O Rider 2021.2 ajudará você a modernizar seu código com a nova correção rápida Swap via deconstruction.

Reduza o número de alocações no seu código e aumente o rendimento. Substitua criação de array vazio por Array.Empty<T>.

Se você estiver alocando um novo Type[0], o Rider sugerirá o uso de Type.EmptyTypes para tornar o uso da memória mais eficiente.

Se EventArgs específicos não forem necessários, o Rider poderá substituir new EventArgs() por EventArgs.Empty.

Outras melhorias:

  • Use a propriedade generated_code de .editorconfig para marcar arquivos ou pastas como código gerado e excluí-los do processamento.
  • As análises de código agora são mais rápidas para membros com muitas funções e encerramentos locais.
  • Aproveite as melhorias de desempenho em Find similar issues e nas análises de código para instruções switch e expressões switch grandes e complexas.

Tipos de Referência Anuláveis (NRT)

Você tem muitas supressões de aviso anuláveis na sua base de código depois de habilitar tipos de referência anuláveis?

O Rider indica supressões (!) que não são mais necessárias e que podem ser removidas com segurança.

Uma nova ação de contexto permite pesquisar todas as supressões de aviso anuláveis no escopo. Na janela de ferramentas Find Results, você pode reavaliar se as supressões são necessárias ou não.

Introduzimos uma nova refatoração para alterar a nulabilidade. Ela está disponível como uma correção rápida, pela ação Refactor This ou por uma refatoração no local ao adicionar ou remover a anotação anulável (? ).

O Rider atualizará anotações de nulabilidade e sugerirá a propagação das alterações em toda a sua base de código.

Diversas novas inspeções com correções rápidas correspondentes estão disponíveis para quando você estiver usando atributos JetBrains.Annotations e os tipos de referência anuláveis estiverem habilitados.

Atualize os atributos JetBrains.Annotations para a sintaxe NRT e atributos compatíveis com o compiler. Por exemplo, o Rider pode atualizar [CanBeNull] string para string?

O Rider informará sobre atributos JetBrains.Annotations redundantes, como [NotNull] string ou [ItemCanBeNull] List<string?>. E, é claro, ele oferecerá uma solução rápida para atualizar seu código.

Quando a sintaxe de tipo de anotação não for permitida, uma nova inspeção com uma correção rápida adicionará anotações compatíveis com o compilador, por exemplo:

  • [JetBrains.Annotations.NotNull] T param a [DisallowNull] T param (where T: class?)
  • [JetBrains.Annotations.CanBeNull] T a [System.Diagnostics.MaybeNull] T (no C# 8, onde a sintaxe T? não é permitida)

O Rider adiciona novas inspeções e correções rápidas para ajudar você a usar quatro anotações compatíveis com o compilador, como [DisallowNull], [AllowNull], [MaybeNull] e [NotNull].

Uma nova inspeção detecta anotações redundantes do compilador, como quando [AllowNull] é aplicado a um tipo anulável e uma correção rápida as remove.

Quando a sintaxe de tipo de referência anulável puder ser usada, o Rider sugerirá o uso.

Existem melhorias adicionais que também merecem ser mencionadas:

  • O Rider verifica se as variáveis precisam ser anuláveis e produz tipos mais rigorosos quando possível.
  • Muitas ações de contexto, correções rápidas e templates postfix foram atualizados para funcionar melhor com supressões de aviso anuláveis. Elas preservam as supressões de aviso anuláveis ou as produzem para o código introduzido quando o código original suprimiu o aviso.
  • Melhoramos o suporte para o uso de elementos genéricos com tipos de referência anuláveis.

Suporte a geradores de código fonte

Geradores de código fonte podem ser usados para reduzir o trabalho de desenvolvimento entediante e repetitivo e para gerar código em tempo de compilação. No ReSharper 2021.2, muitos dos recursos disponíveis para arquivos de código escrito manualmente também estão disponíveis para arquivos de código fonte gerados automaticamente. Melhoramos o suporte ao editor e adicionamos suporte para refatorações.

Agora, as refatorações podem ser acionadas a partir de arquivos de código-fonte gerados automaticamente. Use a refatoração Rename para renomear uma propriedade gerada. O Rider também renomeará o símbolo relacionado em um código escrito manualmente.

Da mesma forma, Change Signature permite que você verifique se o código que será gerado após a alteração ainda pode ser compilado.

Agora, você pode usar Find Usages, procurar herdeiros, navegar do código gerado ao código escrito manualmente com Ctrl+Click e Navigate To e muito mais.

O realce semântico está habilitado e, portanto, membros de classes como eventos, campos e propriedades são realçados corretamente. Todas as dicas de inserção são mostradas quando apropriado.

Para o código gerado, avisos e erros são exibidos no editor e na barra de marcadores.

Além disso, o Rider agora oferece suporte ao código escrito por geradores de código-fonte no VB.NET.

Desenvolvimento de jogos

O Rider 2021.2 continua sua missão de ser um excelente IDE para o desenvolvimento de jogos, com novos recursos para o Unity e algumas melhorias revolucionárias no nosso suporte para Unreal Engine em versão de demonstração preliminar. E, se você trabalha com o Godot, certifique-se de conferir o plug-in Godot Support for Rider.

Suporte para Unity

Agora, a integração inteligente do Rider com o editor do Unity verificará se alguma cena está aberta e não salva antes de você submeter o código. Você pode ter certeza de que tudo está a salvo antes de fazer a submissão!

Já faz tempo que o Rider mostra um link para a documentação do Unity na dica de ferramenta para uma classe ou método do Unity. A diferença é que agora você pode usar a ação External Documentation e seu respectivo atalho para acessar diretamente os documentos sem mostrar a dica de ferramenta primeiro.

O Rider agora pode depurar players UWP locais, solicitando corretamente ao Windows que permita conexões de entrada para o processo que está sendo depurado.

A exibição Packages no Unity Explorer agora aparece significativamente mais rápido quando uma solução é reaberta e até mesmo se lembrará das pastas abertas.

Este lançamento melhora a experiência de depuração dos players baseados em IL2CPP, desabilitando automaticamente a Break on Unhandled Exception quando ele se conecta a um player IL2CPP.

Como sempre, muitas outras melhorias e correções secundárias, como métodos [UnitySetup] não mais marcados como não usados e nomes de camada, são mostradas corretamente na complementação para projetos mais antigos. Existem várias melhorias de desempenho para inspeções baseadas no Unity, especialmente aquelas para arquivos grandes.

Unreal Engine Demonstração preliminar

O Rider for Unreal Engine está progredindo de demonstração preliminar pública para um lançamento final. Confira no que temos trabalhado desde o lançamento de 2021.1: é uma lista e tanto.

Suporte para o Unreal Engine 5! É isso mesmo que você leu: o Rider for Unreal funciona muito bem com os novos projetos Unreal Engine 5, assim como funciona com os seus projetos Unreal Engine 4 existentes.

Suporte para a abertura de arquivos .uproject! Isso mesmo! Chega de gerar arquivos de solução do Visual Studio: o Rider pode abrir seu projeto do Unreal Engine diretamente do arquivo <NomeDoProjeto>.uproject.

O Rider for Unreal Engine agora funciona no Mac! Basta abrir o arquivo <NomeDoProjeto>.uproject e obter a experiência completa do Rider for Unreal no seu macOS. Isso inclui edição aprimorada de shaders C++ e HLSL, navegação, inspeções e refatorações, configurações de estilo de código e correções rápidas, suporte para Blueprint (localizar usos do código dentro de um blueprint, links, contadores e navegação do Code Vision) e integração refinada via depurador com o Unreal Editor. A versão do macOS funciona com o Unreal Engine 4.26 ou posterior.

Grandes melhorias para o Natvis e a apresentação incorporada de resultados do depurador. Suporte para o atributo "inheritable", especificadores de formato, itens de lista personalizados e muito mais, incluindo resumos de uma linha para todas as estruturas não cobertas pelo Natvis e um nó [Raw View] para examinar dados de objetos subjacentes.

Configurações de estilo de código expandido. O Rider reconhecerá um projeto do Unreal e se configurará automaticamente para entender e seguir as convenções de estilo de código do UE. Ele realçará o código que não segue o estilo correto e oferecerá correções rápidas para atualizar seu código automaticamente.

Por último, mas não menos importante, o plug-in EzArgs fornece fácil acesso aos argumentos de configuração de execução/depuração C++. Basta digitar um novo argumento na lista suspensa da barra de ferramentas.

Limpeza de código

Combinamos as caixas de diálogo Reformat File e Code Cleanup. Os atalhos para ambas permanecem os mesmos, mas você terá uma nova exibição unificada que permite que as duas etapas sejam executadas ao mesmo tempo. Perfis de limpeza também visualizam quais ações serão executadas, e você pode alternar facilmente para o modo de edição de perfil com o clique de um botão.

Na caixa de diálogo de submissão, agora você pode habilitar a limpeza automática de código para as suas alterações com o perfil de sua escolha. Como alternativa, você pode usar uma nova opção na caixa de diálogo Reformat and Cleanup para reformatar/limpar apenas as alterações não confirmadas no arquivo atual.

Ações para reformatar código, otimizar importações e reorganizar código agora estão disponíveis para CSS, JavaScript e SQL. As regras podem ser ajustadas em Settings | Editor | Code Cleanup.

Experiência do usuário

Importar configurações de outros IDEs

Sua primeira vez como usuário do Rider? Se você nunca instalou ou usou o Rider antes, o assistente de boas-vindas agora permite importar configurações de outros IDEs, como o Visual Studio, o Visual Studio for Mac ou o Visual Studio Code. Além disso, o Rider reconhecerá as configurações do ReSharper.

Leia mais sobre como funciona a importação de configurações de outros IDEs.

Organizar janelas de ferramentas com ações de arrastar-e-soltar

Agora, ficou mais fácil arrastar uma janela de ferramentas até o local desejado dentro da janela principal do IDE ou uma janela separada. Você pode arrastá-la clicando e segurando a barra de nome da janela de ferramentas e pode soltá-la em qualquer área realçada.

Barra de título transparente Somente para macOS

A barra de título agora é transparente no macOS quando a janela do IDE não está no modo de tela inteira. Isso significa que não há uma borda visível entre a barra de título e o resto da janela.

Configurações avançadas

Se você precisar configurar opções específicas de casos de uso no Rider, poderá fazer isso no novo nó Advanced Settings em Preferences/Settings. Por exemplo, você pode adicionar uma margem esquerda no modo Distraction-free ou definir o cursor para se mover para baixo depois de usar a ação Comment with Line Comment.

Nova opção de navegação em Preferences/Settings

Simplificamos a navegação em Preferences/Settings, adicionando setas no canto superior direito da janela. Elas permitem que você salte rapidamente entre as seções abertas.

Depurador

Valores de propriedades são avaliados e mostrados no depurador por padrão, mas, às vezes, sua avaliação pode demorar um pouco. É por isso que adicionamos uma nova ação Disable Evaluation of Selected Item.

Especialmente com código nativo, pode acontecer que a avaliação de uma chamada de método trave a sessão de depuração. O Rider se lembrará dessas chamadas problemáticas e desabilitará a avaliação delas para você.

Ao percorrer as bases de código, cada novo arquivo é aberto em uma nova guia, às vezes deixando uma barra de guias muito poluída. A guia de visualização pode ajudar aqui. Ela permite que você visualize os arquivos em uma única guia, um por um, sem abrir cada arquivo em uma nova guia. Você pode habilitá-la em Settings/Preferences | General | Editor Tabs | Opening Policy.

Controle de versão

Listas de alterações

Já faz um bom tempo que o Rider usa Default Changelist como o nome do nó que armazena todas as alterações não submetidas. Neste lançamento, decidimos tornar o termo mais preciso, usando simplesmente a palavra Changes. Essa atualização afetará seus novos projetos.

O Rider não adicionará mais listas de alterações automaticamente para operações do Git. Então, por exemplo, uma seleção específica não acionará a criação de uma lista de alterações.

No entanto, se você ainda preferir a criação automática em vez do novo comportamento, poderá ativar o primeiro em Preferences/Settings | Version Control | Changelists, marcando a caixa de seleção Create changelists automatically.

Pesquisa de texto nas revisões de Local History

Adicionamos um campo de pesquisa à caixa de diálogo Local History para ajudar você a obter rapidamente o texto necessário nas suas revisões de Local History. Agora, ao clicar com o botão direito em qualquer arquivo alterado e selecionar Local History | Show History no menu de contexto, você poderá navegar rapidamente pelo histórico dos seus arquivos digitando a consulta nesse campo.

Assinatura GPG

Agora é possível habilitar a assinatura de submissões do Git com o GPG via Preferences/Settings | Version Control | Git. Se esta for a primeira vez que você usa uma chave GPG, primeiro será necessário configurá-la. Com uma chave GPG pré-configurada existente, basta selecioná-la na lista suspensa.

Aumento da versão mínima suportada do Git

A menor versão do Git com suporte pelo seu IDE agora é a 2.17 Aumentamos a versão mínima com suporte pois a 2.17 é a versão mais antiga que ainda recebe atualizações de segurança.

Editor

Remoção estrutural

Implementamos a remoção estrutural do código: basta selecionar e excluir o código com qualquer tipo de seleção estrutural (como navegação estrutural, estender/reduzir seleção ou reorganizar o código) e deixar o Rider realizar as modificações estruturais restantes. Você pode remover vírgulas e caracteres de dois pontos para argumentos de chamada de método, parênteses em argumentos de atributo ou chaves para inicializadores de objetos vazios.

Documentação rápida

Atualizamos a forma como a Documentação Rápida é exibida. Os atributos agora são realçados, para facilitar a leitura e navegação. Se você está inspecionando qualquer classe ou método que usa elementos genéricos, o Rider não renderiza mais um valor de espaço reservado. Em vez disso, é exibida a implementação concreta.

Formatação

Se você prefere usar um estilo de chaves Pico (recuo), nós temos o que você precisa. O estilo Pico foi adicionado como uma opção à guia Brace Layout, em Preferences/Settings | Editor | Code Style | C# | Braces Layout.

Front-End Development

Recarregar páginas no navegador ao salvar

Se você visualizar arquivos HTML no navegador, eles serão atualizados automaticamente de acordo com as alterações salvas no arquivo HTML ou nos arquivos CSS e JavaScript vinculados. Esse recurso está habilitado por padrão.

Refatoração para renomear em hooks useState do React

Chega de perder tempo refatorando funções e valores useState um por um: agora, o Rider pode renomear ambos para você. Posicione o cursor em um valor de estado e pressione Shift+F6 ou acesse Refactor | Rename no menu de contexto ativado com o botão direito do mouse.

Importação automática para require()

Você sabia que o Rider pode adicionar instruções de importação ausentes conforme você complementa símbolos ES6? Agora, ele também pode fazer o mesmo para módulos CommonJS – importações require serão inseridas na complementação de código.

Saiba mais na página Novidades do WebStorm.

Xamarin

Adicionamos suporte para gerar arquivos .aab (Android App Bundle), além de arquivos .apk, que em breve serão a única maneira de fazer o upload das suas aplicações na Google Play Store.

Agora, é possível criar e editar XCAssets para imageset, appiconset e colorset dentro do próprio Rider. Isso permite que você veja todos os diferentes dispositivos finais e suas imagens, ícones e cores atribuídos. Imagens e ícones podem ser adicionados ou substituídos por meio de ações de arrastar e soltar. Para uma seleção de cores conveniente, adicionamos nosso popular controle de seleção de cores.

Ao editar o layout do Android ou arquivos de recursos, o arquivo Resource.Designer.cs agora é gerado automaticamente, removendo todos os erros que antes eram mostrados incorretamente.

Suporte para F#

Templates Postfix na complementação de código

Templates Postfix ajudam a transformar expressões que você já digitou sem voltar para trás. Finalmente os introduzimos para o F#, começando com o template let.

Ações

O Rider tem uma nova ação para desconstrução de padrões para casos com tuples e union no F#.

Ações para reorganizar o código já estão disponíveis. É possível mover elementos para cima/baixo ou para a esquerda/direita em casos de enumeração ou união, campos de caso de registro ou união, cláusulas de correspondência, tuplas e parâmetros de função.

Outra nova ação, Optimize Imports, dispensará você da necessidade de acionar manualmente uma correção rápida semelhante em avisos todas as vezes em que for necessário limpar importações.

Outras melhorias dignas de nota

  • A refatoração Inline Variable agora também funciona para associações let de nível superior.
  • Você encontrará uma renderização de documentação XML significativamente melhor no editor.
  • A versão da linguagem pode ser especificada nas propriedades do projeto e também será gravada em .fsproj.
  • Há uma série de pequenas correções rápidas, refatorações e outras melhorias no suporte à linguagem F#. Please take a look at the full release notes for more information.

Suporte para Apple Silicon Somente para macOS Demonstração preliminar

Está disponível uma demonstração preliminar do Rider 2021.2 com suporte total ao chip M1 nativo. Esta versão não tem a conversão x64-to-ARM64. Ela usa os seguintes tempos de execução:

  • O JBR (JetBrains Runtime) compatível com o Apple Silicon para o front-end.
  • .NET 6 Preview 4 para o back-end.

Confira esta página para obter mais informações.

Suporte para bancos de dados

Geração a partir de uma fonte de dados real

A geração de fontes de dados DDL é outra etapa no nosso desenvolvimento em longo prazo de um controle de versão de banco de dados perfeito. Com esse recurso, você pode manter seus arquivos DDL em um sistema VCS e gerá-los novamente sempre que sua estrutura de banco de dados for atualizada.

Agora, é possível gerar uma fonte de dados DDL com base em uma real. Os arquivos DDL são criados localmente, e a nova fonte de dados se baseia neles. Dessa maneira, você sempre poderá gerar novamente esses arquivos e atualizar a fonte de dados DDL.

Pastas separadas para funções e procedimentos

Se você ativar a opção Separate Procedures and Functions nas configurações do explorador de banco de dados (o ícone de engrenagem), isso terá efeito imediato.

Para o SQL Server, há nós dedicados para funções escalares e de tabela. Para o PostgreSQL, há um nó para funções de gatilho.

Nós separados para gatilhos, chaves e índices

A nova opção de árvore de banco de dados, Show Constraints and Triggers in the Schema, atribui a gatilhos, chaves e índices seus próprios nós individuais no explorador de banco de dados.

Complementação para sinônimos entre bancos de dados SQL Server

A complementação de código para sinônimos entre bancos de dados está disponível.

Plug-ins

dotCover

Agora, o dotCover pode executar análises de cobertura de classes de teste em paralelo dentro de um único assembly. Em alguns casos específicos, isso pode resultar em uma análise de cobertura mais rápida.

Além disso, o pré-carregamento de executores de teste de unidade está disponível para projetos .NET Core e .NET, o que significa que a análise de cobertura começa de maneira mais rápida, pois os executores de teste de unidade já estão carregados na memória.

Existem melhorias adicionais que também merecem ser mencionadas:

  • Suporte aprimorado para C# 8.0 e C# 9.0 na árvore de cobertura (mostrando implementações de interface padrão e muito mais).
  • O dotCover agora se oferece para reiniciar o Unity Editor quando os filtros de cobertura são alterados.

DPA (Dynamic Program Analysis)

A DPA agora armazena dois valores para cada issue: o valor máximo histórico e o valor da última execução. Isso evita falsos negativos, pois era possível que os issues caíssem abaixo do limite e desaparecessem da lista de issues, não porque foram corrigidos, mas sim porque suas condições de inicialização mudaram.

Além disso, existem várias outras melhorias:

  • O DPA é desabilitado automaticamente quando você inicia a criação de perfil de desempenho.
  • A janela Dynamic Program Analysis agora oferece suporte à seleção de vários issues.
  • Agora, a supressão de issues com o atributo SuppressMessage funciona para métodos assíncronos.

Anúncio do SpecFlow

SpecFlow is a tool to bring Behavior-Driven Development to .NET. Incentivados pela comunidade, ajudamos a equipe de desenvolvimento do SpecFlow a publicar um plug-in SpecFlow no JetBrains Marketplace, que adiciona realce de sintaxe, complementação de código, navegação e geração de código-esqueleto para testes SpecFlow. Abordamos esses recursos detalhadamente em um webinar com Andreas Willich.

Plug-ins em destaque

Reconsideramos uma lista dos plug-ins em destaque que você pode ver no assistente “Customize Rider” durante a configuração inicial. Agora, a lista é a seguinte:

Outros

Solution Explorer

Diretórios grandes como node_modules ou libs podem diminuir significativamente a indexação de arquivos, que é usada para fornecer pesquisa de texto rápida. O Rider pode impedir que determinados diretórios sejam indexados a partir do menu de contexto.

Agora, você pode editar propriedades de arquivos (como "Build Action" ou "Copy to Output Directory") para vários itens selecionados no Solution Explorer.

Assembly Explorer e Decompiler

The embedded decompiler now can decompile single-file apps. Ele oferece suporte a formatos de arquivo único para o .NET Core 3.1, .NET 5 e o próximo SDK .NET 6.

Usando o Assembly Explorer, é possível navegar por assemblies inclusos dentro de um aplicativo de arquivo único, como você já está acostumado.

JetBrains Toolbox App

Agora, você não perderá nenhuma atualização crítica de produto do JetBrains Toolbox App. O Rider alertará se houver uma nova versão disponível para download e se oferecerá para atualizá-la. É necessário ter o JetBrains Toolbox App 1.20.8804 ou posterior para isso.

Diversos

  • Os desenvolvedores Razor que trabalham em exibições grandes poderão desativar a assistência e as sugestões automáticas, que exigem alto consumo de CPU, se o editor começar a ficar lento. As configurações estão localizadas aqui: Preferences/Settings | Editor | General | Typing Assistance | Razor | Allow CPU-intensive typing assist.
  • A lista Go To Base/Inheritors também mostra substituições ocultas.
  • Adicionamos suporte para o template de mensagens de log das Microsoft LoggerExtensions. Agora, o Rider agora analisa o código, adiciona realce e oferece ações de contexto.
  • Adicionamos uma opção para suprimir problemas para métodos assíncronos.
  • O Rider avisará quando você tentar executar uma aplicação Web de 64 bits no IIS Express de 32 bits ("use64Bit": false in launchSettings.json) no modo em processo.