Guia Prático de Monitoramento com dotnet-counters para Aplicações .NET

O dotnet-counters é uma ferramenta de diagnóstico essencial para engenheiros de software que trabalham com .NET. Ele permite o monitoramento de desempenho em tempo real através da API EventCounter, sendo ideal para análises preliminares de saúde da aplicação e investigação de gargalos de performance. Com ele, é possível observar métricas como u ...

Publicado em 8-31 05:07

Introdução ao Blazor: Arquitetura e Desenvolvimento de Componentes SPA com C#

O avanço na capacidade de processamento dos navegadores modernos, consolidado pela implementação padrão do WebAssembly, viabilizou a execução direta de binários compilados no ambiente do cliente. Essa evolução eliminou a dependência exclusiva de JavaScript para manipulação complexa da árvore DOM. Diante desse cenário, a Microsoft apresentou o B ...

Publicado em 8-29 01:53

Armazenamento de Imagens em Banco de Dados com ASP.NET Core

Este artigo aborda a persistência de arquivos de imagem diretamente em uma base de dados relacional, utilizando MySQL como sistema de armazenamento e ASP.NET Core como plataforma de desenvolvimento. Estrutura da Tabela para Armazenamento Binário Para guardar dados binários de imagens, o MySQL oferece tipos específicos com diferentes limites de ...

Publicado em 8-17 03:45

Usando o Elasticsearch.Net como Cliente do Elasticsearch

https://github.com/elastic/elasticsearch-net Escolha Elasticsearch.Net como cliente Forma de conexão var node = new Uri("http://myserver:9200"); var config = new ConnectionConfiguration(node); var client = new ElasticLowLevelClient(config); var meuJson = @"{ ""hello"" : ""world"" }&quot ...

Publicado em 7-27 21:47

Implementação de Cache com IResourceFilter em ASP.NET Core

Para melhorar o desempenho em páginas com conteúdo estático, como artigos de notícias, podemos usar o IResourceFilter no ASP.NET Core para armazenar em cache os resultados das ações do controlador. Isso reduz a carga no banco de dados e acelera a resposta da aplicação. Criação do Atributo de Filtro de Cache Primeiro, definimos um filtro persona ...

Publicado em 7-27 20:29

Tratamento de Exceções e Logging em ASP.NET Core com Injeção de Dependência e Pipeline

Introdução Em sistemas corporativos, o tratamento de exceções é uma tarefa essencial para desenvolvedores, refletindo diretamente a maturidade técnica na gestão de aplicações. Este artigo demonstra como implementar captura global de exceções em uma Web API com ASP.NET Core, utilizando o componente NLog para registro de logs. Serão abordados doi ...

Publicado em 7-13 20:45

Upload e download de arquivos no ASP.NET Core: formulário, Ajax e componentes

Uma das tarefas mais comuns em aplicações web é o envio e a recuperação de arquivos entre cliente e servidor. No ASP.NET Core, o processo é simplificado pela interface IFormFile, que representa um arquivo recebido via requisição multipart/form-data. Upload por model binding O jeito mais direto é criar um formulário HTML com enctype="mul ...

Publicado em 6-27 00:25

Implementação de Políticas de Resiliência com Polly no .NET

Introdução ao Polly Polly é uma biblioteca para aplicações .NET que fornece um conjunto de políticas de tratamento de falhas, permitindo a implementação de mecanismos como repetição, timeout e disjuntores (circuit breakers). Essa biblioteca ajuda os desenvolvedores a criar aplicações mais robustas e tolerantes a falhas. Estratégia de Repetição ...

Publicado em 6-24 03:28

Configuração do Blazor Server para Acesso em Rede Local no Linux

Quando uma aplicação Blazor Server é iniciada e exibe a mensagem de escuta em localhost, ela está acessível apenas na máquina local. O localhost é um nome de host especial que aponta sempre para o computador local, não respondendo a pedidos de rede vindos de outros dispositivos. Para permitir que a aplicação seja acessível na rede local, é nece ...

Publicado em 6-15 20:48

Implementando Estratégias de Cache em ASP.NET Core 3.1

Este guia explora a utilização do mecanismo de cache em memória nativo do ASP.NET Core 3.1, demonstrando diferentes abordagens como expiração absoluta, deslizante e dependência de arquivo. Configuração Inicial Para habiltiar o cache em memória, registre o serviço no método ConfigureServices da sua classe Startup: services.AddMemoryCache(); Hel ...

Publicado em 6-15 06:08