18/04/2024
O que é Swagger?
Swagger é uma representação simples, mas poderosa, de sua API RESTful. Com o maior ecossistema de ferramentas de API do planeta, milhares de desenvolvedores oferecem suporte ao Swagger em quase todas as linguagens de programação e ambientes de implantação modernos.
- Forma padrão de serviço
- Todos entendem facilmente nosso código
- Fácil de testar
- Não há necessidade de escrever documento.
Nesse tutorial, vou utilizar o ASP.NET MVC C# para criar a WEB API. A versão do framework é a 4.8 e estou usando o MySQL Connector 8.3.0.
Sem mais delongas, vamos ao tutorial!!
Passo 1: Adicionando Swagger ao projeto de API da Web
Para adicionar o Swagger à API Web, precisamos apenas instalar um projeto de código aberto chamado Swashbuckle via NuGet.
Passo 2: Instale o Swagger do NuGet.
Após a instalação, você pode ver swaggerconfig.cs na pasta app_start em seu respectivo projeto.
Passo 3: Visualize o Swaggerconfig.cs
Passo 4: Configurando o Swagger
No mínimo, precisamos desta linha para ativar o Swagger e a UI do Swagger.
Configuração Global.Configuração
.EnableSwagger(c => c.SingleApiVersion( "Versão" , "Nome do Projeto" ))
.EnableSwaggerUi();
Passo 5: Agora, execute seu aplicativo API.
Passo 6: Basta digitar swagger após o serviço. Você obterá a UI do swagger com API de lista, incluindo tudo o que escrevemos em serviços.
exemplo - http://localhost:1025/swagger/ui/index
Passo 7: Basta clicar em uma API para visualizar os respectivos dados. Clique no botão "Experimentar" para ver o resultado.
- Basta clicar com o botão direito no seu projeto e ir em propriedades.
- Selecione a guia "build".
- Ative a opção "XML documentation file" conforme imagem abaixo
Passo 9: Em cada método das controllers do projeto agora você pode fazer comentários conforme mostra a imagem abaixo:
O comentário irá aparecer da seguinte forma no swagger:
Para motivo de informação, o swagger gera uma documentação em JSON que pode ser acessada no link http://localhost:1025/swagger/docs/v1
Seu projeto está pronto! É claro que tem várias outras configurações que podem ser feitas, dando uma pesquisada se encontra bastante coisas mas o básico para funcionar está aí!
Forte abraço!
Por Carlos Eduardo Sonego
17/04/2024
Nesse artigo vou ensinar a fazer upgrade do framework 4.5 para o 4.8.
Primeiro nas configurações do projeto altere o framework para o 4.8 conforme imagem abaixo:
Após a atualização, é preciso instalar via nuget as referências do MySQL 8.3.0.0 conforme imagem abaixo:
Ou rodar os comandos abaixo no package manager console:
Install-Package MySql.Data -version 8.3.0.0
Install-Package MySql.Data.EntityFramework -version 8.3.0.0
Install-Package MySql.Web -version 8.3.0.0
Caso já tenha instalado as referências, faça update com os comandos abaixo:
Update-Package MySql.Data -version 8.3.0.0
Update-Package MySql.Data.EntityFramework -version 8.3.0.0
Update-Package MySql.Web -version 8.3.0.0
Ao concluir os passos anteriores, é necessário fazer umas alterações no Web.config do projeto.
1º) Adicionar/substituir o assembly do mysql.data:
<dependentAssembly>
<assemblyIdentity name="MySql.Data" publicKeyToken="c5687fc88969c44d" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-8.3.0.0" newVersion="8.3.0.0" />
</dependentAssembly>
2º) Adicionar/substituir a tag do entityframework:
<entityFramework>
<defaultConnectionFactory type="MySql.Data.Entity.MySqlConnectionFactory, MySql.Data.Entity.EF6" />
<providers>
<provider invariantName="MySql.Data.MySqlClient" type="MySql.Data.MySqlClient.MySqlProviderServices, MySql.Data.EntityFramework, Version=8.3.0.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d">
</provider>
</providers>
</entityFramework>
3º) Adicionar/substituir a tag system.data:
<system.data>
<DbProviderFactories>
<remove invariant="MySql.Data.MySqlClient" />
<add name="MySQL Data Provider" invariant="MySql.Data.MySqlClient" description=".Net Framework Data Provider for MySQL" type="MySql.Data.MySqlClient.MySqlClientFactory, MySql.Data, Version=8.3.0.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d" />
</DbProviderFactories>
</system.data>
OBS: Não temo certeza (não conseguimos!) mas campos do tipo tinyblob não funciona no mysql 8. Em alguns projetos tivemos vários problemas com ele e resolvemos trocar.
Espero que possa ajudar alguém pois eu sofri bastante para chegar nessa configuração!
Forte abraço!!
Por Carlos Eduardo Sonego
30/03/2023
Olá Pessoal,
Ontem me deparei com uma situação bem chata, meu Visual Studio 2019 começou a dar problema em uma referência e não abria nenhum projeto.
System.IO.FileNotFoundException: Could not load file or assembly 'System.Numerics.Vectors, Version=4.1.4.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' or one of its dependencies.
Possivelmente deve ter atualziado essa referência em algum update que fizemos no projeto e deixou algo preso na cache.
Depois de um dia tentando resolver isso, vamos para os procedimentos que fiz.
Primeiro de tudo, veja como limpar o cache de componentes do Visual Studio.
1. Feche o Visual Studio (certifique-se de que devenv.exe não esteja presente no Gerenciador de Tarefas)
2. Exclua o diretório %USERPROFILE%\AppData\Local\Microsoft\VisualStudio\16.XXX\ComponentModelCache
3. Exclua todo o conteúdo da pasta %USERPROFILE%\AppData\Local\Temp
4. Desativar extensões caso tenha instalado alguma
5. Reinicie o Visual Studio.
Caso ainda dê problemas, tente também fazer a limpeza de dados temporários do perfil do usuário também.
%USERPROFILE%\AppData\Local\Microsoft\Team Foundation
%USERPROFILE%\AppData\Local\Microsoft\VisualStudio
%USERPROFILE%\AppData\Local\Microsoft\VSCommon
Em seguida, abra a pasta Visual Studio IDE no prompt de comando e execute devenv /resetuserdata na pasta Visual Studio IDE.
Localização típica para 64 bits: C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE
Localização típica para 32 bits: C:\Program Files\Microsoft Visual Studio 10.0\Common7\IDE
Por fim, se nada funcionar, verifique se não tem nenhuma atualização pendente do Visual Studio!
Isso resolveu meu problema! Espero poder ajudar alguém com isso também!
Abraço!
Referência:
https://www.matteopozzani.com/visual-studio-cache-cleanup/
31/08/2022
A versão mobile está sendo cada dia mais requisitada dentro do mercado e também pelos usuários, isso porque se trata de um conceito que está presente todos os dias na vida de pessoas ao redor do mundo.
Hoje, é quase impossível ver uma pessoa que não tenha um smartphone ou que passe o dia todo sem entrar em uma de suas redes sociais, pois esse hábito se tornou normal no dia a dia da população.
Não há como negar que a internet e as redes sociais mudaram por completo a maneira como nos comunicamos. Hoje conseguimos encontrar um produto ou serviço em poucos segundos e com apenas alguns cliques.
Isso prova como a era digital chegou para mudar não só nossas vidas pessoais, mas também o que diz respeito ao profissional, afinal de contas, com a chegada de conceitos como o marketing digital, ter o seu próprio negócio nunca foi tão acessível.
É através de conceitos como esses que uma empresa de suporte técnico em informática conseguiu se tornar a melhor em seu segmento, o que prova que o mundo online chegou para também mudar por completo o meio empresarial.
Com isso, diversas empresas começaram a investir no universo digital a fim de obterem melhores resultados com o passar do tempo, alguns apostaram em perfis nas redes sociais e outros na criação de sites.
Ambos os casos tinham como objetivo levar a marca para o maior número possível de usuários e fazer com que eles fossem convertidos a clientes da marca, comprando seus produtos ou serviços sem precisar sair de casa.
Nos últimos tempos, as compras online cresceram bastante, o que prova que o universo digital tem ocupando um espaço cada vez maior na vida das pessoas, e por isso precisa ser tratado com cuidado pelos empreendedores.
Se uma pessoa deseja contratar a melhor empresa de consultoria em tecnologia da informação para sua marca, ela provavelmente fará uma pesquisa minuciosa na internet até encontrá-la.
O fato é que ultimamente as pessoas estão realizando a maioria de suas pesquisas através do celular, porque é um aparelho prático, acessível e que todos usam diariamente. A pergunta que não quer calar é se o site da sua marca está atendendo bem esses clientes.
Ter um site bem estruturado é muito mais do que apenas contar com um domínio que possua uma boa identidade visual e conteúdos de qualidade, mas também é ter um site que entregue acessibilidade e responsabilidade em diversos aparelhos.
Sendo assim, hoje você irá conhecer mais sobre o conceito de experiência mobile dentro de sites, porque isso é tão importante e como você pode fazer para melhor a do seu com dicas simples.
Entenda o que é experiência mobile
Quando uma marca decide criar um site para vender mais dos seus produtos ou serviços, além de contar com uma boa empresa de criação de softwares nessa missão, é importante estar atento à experiência mobile dele.
Mobile é o nome dado ao uso de sites ou aplicativos apenas pelo celular, que se tornou o aparelho eletrônico mais consumido nos últimos anos. É raro achar alguém que não possua um smartphone nos dias de hoje.
E muitas pessoas costumam fazer tudo pelo celular, desde o pagamento de suas contas até mesmo a compra de produto ou serviço que ela precisa. Por isso, a experiência mobile tem se tornado cada vez mais importante.
A maioria dos sites são construídos em cima da experiência no desktop, que são os laptops e computadores, mas isso não significa que todos os usuários irão acessar o seu site apenas por esses dispositivos.
Pensar na experiência mobile do seu site é o que garante uma ótima experiência nele para o usuário e o que influencia diretamente em sua decisão de compra, assim como ocorreu com o site da melhor consultoria de segmentos totvs da atualidade.
Criar um site do zero é um baita desafio e está longe de ser algo fácil, mas só quem entende sobre seu negócio sabe a importância de ter um dentro da sua marca, pois ele traz inúmeros benefícios, como:
-
Maior alcance;
-
Melhor segmentação;
-
Controle de dados;
-
Acesso à informações;
-
Construção de relevância;
-
Audiência fiel.
Sendo assim, ao criar ou reestruturar o seu site, é importante levar em consideração a experiência mobile para que o seu usuário se sinta confortável dentro do seu site e consiga realizar o que deseja através do seu celular.
Características de uma boa experiência mobile
Criar uma experiência mobile não é complicado como muitos pensam, basta estar atento a alguns detalhes importantes e que não podem faltar em seu site.
Por isso, selecionamos algumas características fundamentais e que não podem ficar de fora do seu site para te ajudar nesse processo, confira:
Site responsivo
Um sistema delivery online é responsivo quando se tornou um sistema que funciona tanto em versão desktop quanto mobile, entregando ainda mais acessibilidade e facilidade para as pessoas que acessam o site.
Quando falamos de um site responsivo, nos referimos ao site que se adapta aos mais diversos dispositivos, tamanhos e formatos de tela e sistemas operacionais, oferecendo um ótima experiência para todo e qualquer tipo de usuário.
Por isso, se preocupar em construir e oferecer um site responsivo é essencial para o seu negócio, pois além de garantir uma boa versão mobile, também entrega um site que ajudará esse usuário a encontrar o que deseja ou precisa.
Layout otimizado
O layout também é uma das partes mais importantes de um site, pois ele ajuda na construção da identidade visual da marca que também é uma ferramenta direta da comunicação da empresa.
Seja o site de uma marca que ofereça consultoria empresarial online ou até mesmo um e-commerce de roupas, o layout precisa ser bem estruturado e otimizado para a versão mobile.
Isso significa que, da mesma maneira que o seu site aparenta ser na versão desktop, também precisa ser na versão mobile para garantir que o usuário tenha uma ótima experiência e consuma o que você oferece.
Bom tempo de carregamento
Ninguém suporta um site que trava, não é mesmo? As chances de uma pessoa sair dele e procurar outro são as maiores possíveis, afinal de contas, vivemos em uma era onde temos milhares de opções à nossa disposição.
Isso significa que, se uma não consegue nos atender como queremos, outra irá, e se você não se preocupar com o bom tempo de carregamento dentro da versão mobile do seu site, isso é o que pode acontecer.
Sendo assim, além de contar com uma boa gestão de arquivos, cuidar do tempo e carregamento do seu site e das páginas dele também é muito importante para que a experiência do usuário seja a melhor possível.
Processos práticos
Existem muitos casos onde os usuários acessam sites que possuem muitas etapas até chegar na página que ele deseja ou até mesmo para que ele realize a compra do produto ou serviço.
Muitos sites pedem diversos dados e informações que às vezes causam um incômodo ao usuário que, em alguns casos, se sente desanimado em meio a tantos processos e pode até mesmo desistir da compra.
Por isso, o mais recomendado é que seu site tenha processos simples, objetivos e rápidos, principalmente no que diz respeito à versão mobile, pois se trata de uma característica que faz toda a diferença na experiência como um todo dentro do site.
Otimização de imagens
Por fim, mas não menos importante, cuidar das imagens e vídeos que você coloca em seu site é tão importante quanto contar com uma boa configuração de servidor de email para garantir seus contatos bem organizados e seguros.
Isso porque é normal que muitos sites usem imagens e vídeos para ilustrar seus produtos ou serviços. Sendo assim, esse material também precisa ser otimizado para a versão mobile, permitindo que o usuário consiga acessá-lo pelo smartphone.
Pode até parecer uma dica banal, mas que muitas vezes passa batido por muitos empreendedores e até mesmo profissionais de TI, que sabem a grande diferença que isso faz na experiência do usuário.
Considerações finais
Essas são algumas características que não ficam de fora de um site que se preocupa com a experiência mobile de seus usuários dentro de seus sites, entregando qualidade não apenas em seus serviços ou produtos, mas também em todos os seus processos.
Dessa maneira, você terá um site de qualidade para que seus usuários consigam acessar com facilidade pelo celular e conhecer a excelência do que você oferece e dos processos que aplica em seu negócio.
Esse texto foi originalmente desenvolvido pela equipe do blog Guia de Investimento, onde você pode encontrar centenas de conteúdos informativos sobre diversos segmentos.
22/04/2022
Na View
@Html.TextBoxFor(model => model.DATA_EXPIRACAO, (string)ViewBag.DataExpiracao, new { @class = "form-control", @type = "date" })
Na Controller
if (depoimento.DATA_EXPIRACAO != null)
ViewBag.DataExpiracao = depoimento.DATA_EXPIRACAO.Value.ToString("yyyy-MM-dd");
30/09/2021
apt-get remove certbot
apt-get install snapd
snap install --classic certbot
ln -s /snap/bin/certbot /usr/bin/certbot
certbot renew --force-renewal --cert-name mybbb.server.com --preferred-chain "ISRG Root X1"