DEV Community

Leandro Torres
Leandro Torres

Posted on • Edited on

3 1

Blazor WebView - App Desktop

Olá Devs! 👨‍💻

Sim, eu desenvolvo aplicações para desktop. Existem necessidades específicas que um software desktop acaba sendo aderente.

Quando falamos sobre desktop hoje, boa parte dos Devs pensa imediatamente em: "Electron". Sei que temos muitas aplicações desenvolvidas assim, já desenvolvi assim, mas o resultado não me agrada muito. Quem sabe depois escrevo um post sobre isso. Para esse tipo de aplicação, minha opção acabou sendo um modelo híbrido, uma mistura de WindowsForms + CefSharp + Nancy. O resultado é bem satisfatório, mas acredito que pode melhorar bastante, e é ai que entra o Blazor WebView.

Estou sempre em busca de novas possibilidades e achei artigos interessantes que me fizeram pensar e querer colocar em prática. Vou aproveitar para conhecer o Blazor, já que estou devendo esse estudo faz um tempo.

Com as novas versões de SDK do .Net, sei que muita coisa vai mudar e/ou melhorar com relação ao Desenvolvimento Desktop, mas vou começar estudando essa alternativa. A ideia é entender o funcionamento e criar algo, simples e leve.

Esse desenvolvimento esta sendo feito com o SDK 6.0 preview e o VS2019. Após a instalação do SDK, você precisa configurar o VS2019 para que ele consiga trabalhar com a versão preview. Para fazer essa configuração é só acessar o menu "Tools -> Options" e ativar a opção conforme na figura.

alt text

Outro ponto importante é a instalação do WebView2 Runtime, o link esta no final do artigo.

Criando o projeto e a solução

dotnet new winforms -n BlazorDesktop -f net6.0
dotnet new sln
dotnet sln add BlazorDesktop/BlazorDesktop.csproj
Enter fullscreen mode Exit fullscreen mode

Adicionando o pacote webview

dotnet add package Microsoft.AspNetCore.Components.WebView.WindowsForms --version 6.0.0-preview.3.21201.13
Enter fullscreen mode Exit fullscreen mode

Criei um repositório que vou atualizar de acordo com as necessidades. Atualizo o post se pintar novidades.

Repositório

Prereqs
SDK 6.0.100-preview.3

Microsoft Edge WebView2

Referências
Nancy - Lightweight Web Framework for .net

CefSharp - Fast web browser for WinForms and WPF Apps

ASP.NET Core updates in .NET 6 Preview 3

.NET 6 Gets Blazor WebView Controls for WPF, WinForms

Distribution of apps using WebView2

Getting Setup With .NET 6 Preview


Até a próxima! 👊
☕😊 Agora você pode apoiar comprando um café para mim

Heroku

Build apps, not infrastructure.

Dealing with servers, hardware, and infrastructure can take up your valuable time. Discover the benefits of Heroku, the PaaS of choice for developers since 2007.

Visit Site

Top comments (0)

Sentry image

See why 4M developers consider Sentry, “not bad.”

Fixing code doesn’t have to be the worst part of your day. Learn how Sentry can help.

Learn more

👋 Kindness is contagious

Please leave a ❤️ or a friendly comment on this post if you found it helpful!

Okay