Ir para o conteúdo do rodapé
AJUDA DO .NET

.NET Aspire (Como funciona para desenvolvedores)

O .NET Aspire se destaca como uma estrutura de pilha decisiva e pronta para a nuvem, projetada especificamente para a construção de aplicativos distribuídos, observáveis ​​e prontos para produção. Distribuído por meio de um conjunto de pacotes NuGet , o Aspire aborda de forma eficiente várias considerações de descoberta de serviços nativos da nuvem e visa fornecer padrões de configuração consistentes. No contexto de aplicativos nativos da nuvem .NET , a norma envolve componentes menores e interligados, ou microsserviços, em aplicativos distribuídos, afastando-se da estrutura de código monolítica tradicional. Essas aplicações normalmente dependem de diversos serviços, como bancos de dados, sistemas de mensagens, recursos em nuvem e armazenamento em cache.

Neste contexto, as aplicações distribuídas aproveitam recursos computacionais que abrangem vários nós, como contêineres que operam em hosts diversos. A comunicação eficaz entre os limites da rede é essencial para que esses nós possam fornecer respostas aos usuários finais de forma colaborativa. Especificamente, uma aplicação distribuída nativa da nuvem é uma categoria distinta dentro das aplicações distribuídas, que aproveita a escalabilidade, a resiliência e a capacidade de gerenciamento inerentes às infraestruturas de aplicativos nativos da nuvem.

Neste artigo, discutiremos os componentes do .NET Aspire para criar um aplicativo web. Além disso, utilizaremos a biblioteca IronPDF para criar e baixar arquivos PDF no componente de projeto Aspire .NET .

1. Introdução ao .NET Aspire

O aplicativo .NET Aspire representa uma iniciativa proposital destinada a aprimorar a experiência de desenvolvimento de aplicativos .NET nativos da nuvem dentro do ecossistema .NET . Ele introduz um conjunto coeso e bem definido de ferramentas e padrões de design criados para facilitar a construção e a operação perfeitas de aplicativos distribuídos. Os principais objetivos do aplicativo inicial .NET Aspire incluem:

  1. Orquestração: O recurso de orquestração do .NET Aspire oferece funcionalidades robustas para orquestrar aplicações com múltiplos projetos e suas dependências complexas. Essa funcionalidade garante uma execução tranquila e conectividade perfeita entre os diversos componentes de projetos .NET .
  2. Componentes: Os componentes oferecidos pela orquestração do .NET Aspire estão encapsulados em pacotes NuGet , representando serviços amplamente utilizados, como o recurso de contêiner Redis local ou o Postgres. Esses componentes são caracterizados por interfaces padronizadas, garantindo uma integração consistente e perfeita com sua aplicação. Ao aproveitar esses componentes pré-configurados, os desenvolvedores podem acelerar o processo de desenvolvimento e manter um nível mais alto de interoperabilidade e aplicativos nativos da nuvem configuráveis ​​usando modelos de projeto .NET Aspire.
  3. Ferramentas: Os modelos iniciais do .NET Aspire incorporam um conjunto abrangente de ferramentas personalizadas para otimizar o fluxo de trabalho de desenvolvimento. Os modelos de projeto e as experiências de ferramentas são cuidadosamente integrados ao Visual Studio e à CLI do .NET , permitindo que os desenvolvedores criem e interajam com aplicativos .NET Aspire sem esforço. Essa estrutura de ferramentas inclusiva aumenta a produtividade e fornece um ambiente coeso para o desenvolvimento e gerenciamento de configurações de aplicativos .NET Aspire e modelos de projeto.

Em essência, o .NET Aspire serve como uma solução holística, abordando aspectos-chave de preocupações específicas da computação em nuvem, como orquestração, integração de componentes e ferramentas, tudo com o objetivo de aumentar a eficiência e a consistência na criação e implantação de aplicativos .NET nativos da nuvem.

2. Primeiros passos com o .NET Aspire

Antes de usar o .NET Aspire, certifique-se de que os seguintes componentes estejam instalados localmente:

  1. .NET 8.0: Certifique-se de ter o .NET 8.0 instalado em seu sistema.
  2. Carga de trabalho .NET Aspire: Adquira a carga de trabalho .NET Aspire utilizando o instalador do VS ou executando o comando dotnet workload install aspire.
  3. Ambiente de Desenvolvimento Integrado (IDE) ou Editor de Código: O Visual Studio 2022 deve ser instalado previamente no sistema.

Se todos esses requisitos forem atendidos, você estará pronto para desenvolver seus primeiros componentes .NET Aspire para gerenciar aplicativos.

3. Crie um novo projeto .NET Aspire

Para criar aplicativos .NET Aspire, siga os passos abaixo.

  1. Abra o Visual Studio e clique em Criar um novo projeto.
  2. Uma nova janela será aberta. Nesta nova janela, pesquise Aspire na barra de pesquisa.
  3. Uma lista será exibida abaixo; nessa lista, selecione o projeto apphost e as referências de pacote do Aspire Starter e clique em Avançar.
  4. Uma nova janela será aberta. Nesta nova janela, digite o nome do projeto e clique em Avançar.
  5. Nesta janela, selecione a estrutura de destino e clique no botão Criar.

O aplicativo .NET Aspire será criado em poucos segundos e você estará pronto para começar o desenvolvimento e a personalização.

4. Executando e testando o aplicativo .NET Aspire

Após a criação do projeto, basta clicar no botão Executar. Levará algum tempo para gerar a compilação e, em seguida, será aberta a página inicial do nosso aplicativo web Aspire.

Esta página inicial conterá nossa pilha de aplicativos .NET Aspire nativos da nuvem para a criação de aplicativos iniciais .NET Aspire observáveis ​​e prontos para produção.

 .NET Aspire (Como funciona para desenvolvedores): Figura 1 - Página inicial do Aspire

Agora clique nos links para interagir com o .NET. Por enquanto, clique no projeto de front-end web .NET Aspire e nas referências de pacote. Isso abrirá a nova página da web com um nome de porta diferente.

 .NET Aspire (Como funciona para desenvolvedores): Figura 2 - Nova página da Web

5. Introducing IronPDF C

A documentação do IronPDF o descreve como uma biblioteca C# poderosa e versátil que permite aos desenvolvedores integrar facilmente recursos avançados de geração e manipulação de PDFs em seus aplicativos. Desenvolvida pela Iron Software, esta biblioteca rica em recursos oferece um conjunto abrangente de ferramentas para criar, modificar e renderizar documentos PDF diretamente em aplicativos C#.

Com o IronPDF, os desenvolvedores podem gerar PDFs facilmente a partir de diversas fontes, como HTML, imagens e documentos existentes, mantendo o controle preciso sobre a formatação e o layout. Seja para criar relatórios dinâmicos, converter conteúdo HTML em PDF ou adicionar anotações a documentos existentes, o IronPDF simplifica o processo de manipulação de PDFs, tornando-se um recurso indispensável para desenvolvedores C# que buscam uma solução confiável e eficiente para suas necessidades de gerenciamento de documentos.

5.1. Instalando o IronPDF

Para instalar o IronPDF sem problemas, utilize o Gerenciador de Pacotes NuGet dentro do Visual Studio. O pacote designado para instalação chama-se IronPDF. Basta copiar e colar o seguinte comando no Console do Gerenciador de Pacotes e pressionar Enter:

Install-Package IronPdf

5.2. Integrando o IronPDF com o componente Aspire

A integração do IronPDF com o componente Aspire é semelhante à integração com a aplicação web Blazor , pois os componentes Aspire podem utilizar a aplicação Blazor como um componente. Neste exemplo de código, vamos alterar o código da página do contador para criar e baixar um arquivo PDF.

Abra o arquivo counter.razor e substitua o código pelo código abaixo.

@page "/PrintPDF"
@rendermode InteractiveServer
@using IronPdf
<PageTitle>Print PDF</PageTitle>
<h1>IronPDF</h1>
<p role="status">Click on the button below to create and download the PDF file </p>
<button class="btn btn-primary" @onclick="IncrementCount">Print</button>
@code {
    private int currentCount = 0;

    /// <summary>
    /// Handles the click event of the "Print" button.
    /// This function will generate a PDF from an HTML string and prompt the user to download it.
    /// </summary>
    private void IncrementCount()
    {
        var renderer = new ChromePdfRenderer();
        // Create a PDF from an HTML string using C#
        var pdf = renderer.RenderHtmlAsPdf("<h1>Hello World</h1>");
        // Export to a file using JavaScript Interop to initiate download
        JSRuntime.InvokeVoidAsync("saveAsFile", "output.pdf", Convert.ToBase64String(pdf.Stream.ToArray()));
    }
}
@page "/PrintPDF"
@rendermode InteractiveServer
@using IronPdf
<PageTitle>Print PDF</PageTitle>
<h1>IronPDF</h1>
<p role="status">Click on the button below to create and download the PDF file </p>
<button class="btn btn-primary" @onclick="IncrementCount">Print</button>
@code {
    private int currentCount = 0;

    /// <summary>
    /// Handles the click event of the "Print" button.
    /// This function will generate a PDF from an HTML string and prompt the user to download it.
    /// </summary>
    private void IncrementCount()
    {
        var renderer = new ChromePdfRenderer();
        // Create a PDF from an HTML string using C#
        var pdf = renderer.RenderHtmlAsPdf("<h1>Hello World</h1>");
        // Export to a file using JavaScript Interop to initiate download
        JSRuntime.InvokeVoidAsync("saveAsFile", "output.pdf", Convert.ToBase64String(pdf.Stream.ToArray()));
    }
}
'INSTANT VB WARNING: An assignment within expression was extracted from the following statement:
'ORIGINAL LINE: @page "/PrintPDF" @rendermode InteractiveServer using IronPdf <PageTitle> Print PDF</PageTitle> <h1> IronPDF</h1> <p role="status"> Click on the button below to create and download the PDF file </p> <button class="btn btn-primary" onclick="IncrementCount"> Print</button> @code
"btn btn-primary" onclick="IncrementCount"> Print</button> code
'INSTANT VB WARNING: An assignment within expression was extracted from the following statement:
'ORIGINAL LINE: Friend @page "/PrintPDF" @rendermode InteractiveServer using IronPdf <PageTitle> Print PDF</PageTitle> <h1> IronPDF</h1> <p role="status"> Click on the button below to create and download the PDF file </p> <button Class="btn btn-primary" onclick
"status"> Click on the button below [to] create [and] download the PDF file </p> <button Class="btn btn-primary" onclick
Private Private Friend page "/PrintPDF" rendermode InteractiveServer [using] IronPdf (Of PageTitle) Print PDF</PageTitle> (Of h1) IronPDF</h1> <p role="status"> Click on the button below [to] create [and] download the PDF file </p> <button Class
	Private currentCount As Integer = 0

	''' <summary>
	''' Handles the click event of the "Print" button.
	''' This function will generate a PDF from an HTML string and prompt the user to download it.
	''' </summary>
	Private Sub IncrementCount()
		Dim renderer = New ChromePdfRenderer()
		' Create a PDF from an HTML string using C#
		Dim pdf = renderer.RenderHtmlAsPdf("<h1>Hello World</h1>")
		' Export to a file using JavaScript Interop to initiate download
		JSRuntime.InvokeVoidAsync("saveAsFile", "output.pdf", Convert.ToBase64String(pdf.Stream.ToArray()))
	End Sub
End Class
$vbLabelText   $csharpLabel

Em seguida, escreva o código JavaScript para baixar o arquivo PDF. Escreva esse código na tag <script> dentro da tag <body> do HTML. Abaixo está o código para adicionar ao seu projeto.

<script type="text/javascript">
    function saveAsFile(filename, bytesBase64) {
        if (navigator.msSaveBlob) {
            //Download document in Edge browser
            var data = window.atob(bytesBase64);
            var bytes = new Uint8Array(data.length);
            for (var i = 0; i < data.length; i++) {
                bytes[i] = data.charCodeAt(i);
            }
            var blob = new Blob([bytes.buffer], { type: "application/octet-stream" });
            navigator.msSaveBlob(blob, filename);
            window.navigator.msSaveOrOpenBlob(blob);
        }
        else {
            var link = document.createElement('a');
            link.download = filename;
            link.href = "data:application/octet-stream;base64," + bytesBase64;
            document.body.appendChild(link); // Needed for Firefox
            link.click();
            document.body.removeChild(link);
        }
    }
</script>
<script type="text/javascript">
    function saveAsFile(filename, bytesBase64) {
        if (navigator.msSaveBlob) {
            //Download document in Edge browser
            var data = window.atob(bytesBase64);
            var bytes = new Uint8Array(data.length);
            for (var i = 0; i < data.length; i++) {
                bytes[i] = data.charCodeAt(i);
            }
            var blob = new Blob([bytes.buffer], { type: "application/octet-stream" });
            navigator.msSaveBlob(blob, filename);
            window.navigator.msSaveOrOpenBlob(blob);
        }
        else {
            var link = document.createElement('a');
            link.download = filename;
            link.href = "data:application/octet-stream;base64," + bytesBase64;
            document.body.appendChild(link); // Needed for Firefox
            link.click();
            document.body.removeChild(link);
        }
    }
</script>
JAVASCRIPT

Basta executar o código e ele ficará parecido com a imagem abaixo.

 .NET Aspire (Como funciona para desenvolvedores): Figura 3 - Blazor

Para criar e baixar um arquivo PDF, clique no botão Imprimir. O programa irá criar e baixar o arquivo PDF chamado output.pdf.

 .NET Aspire (Como funciona para desenvolvedores): Figura 4 - Download do PDF

6. Conclusão

O .NET Aspire surge como uma estrutura fundamental, projetada especificamente para desenvolver aplicações robustas, observáveis ​​e distribuídas em ambiente de nuvem. Ao fornecer um conjunto coeso de ferramentas e padrões de design, o .NET Aspire simplifica as complexidades associadas à criação de aplicativos nativos da nuvem, oferecendo orquestração perfeita, integração de componentes e uma estrutura de ferramentas fácil de usar. Com foco em escalabilidade, resiliência e gerenciabilidade, o .NET Aspire alinha-se à mudança de paradigma em direção a microsserviços e arquiteturas distribuídas.

Ao iniciarem sua jornada com o .NET Aspire, os desenvolvedores obtêm acesso a um conjunto abrangente de recursos, desde aplicativos multiprojeto orquestrados até componentes padronizados encapsulados em pacotes NuGet . Ao atender aos pré-requisitos e seguir os passos simples descritos no guia, os desenvolvedores podem criar, executar e testar aplicativos .NET Aspire sem esforço.

Além disso, a integração do IronPDF nos componentes do Aspire demonstra a extensibilidade e a versatilidade da estrutura, permitindo que os desenvolvedores incorporem facilmente recursos avançados de geração e manipulação de PDFs em seus aplicativos nativos da nuvem. Em resumo, o .NET Aspire, com seus objetivos bem definidos e abordagem amigável ao usuário, se posiciona como um recurso valioso para desenvolvedores que buscam uma solução eficiente e consistente para criar e implantar aplicativos nativos da nuvem dentro do ecossistema .NET .

Para um tutorial completo sobre como usar o IronPDF com aplicativos web Blazor, visite o tutorial no blog do IronPDF. Para obter uma versão de avaliação gratuita do IronPDF, visite a página de licenciamento do IronPDF para obter sua licença de avaliação gratuita.

Perguntas frequentes

Como posso converter HTML para PDF em C#?

Você pode usar o método RenderHtmlAsPdf do IronPDF para converter strings HTML em PDFs. Você também pode converter arquivos HTML em PDFs usando o RenderHtmlFileAsPdf .

Qual é a finalidade do .NET Aspire no desenvolvimento de aplicações nativas da nuvem?

O .NET Aspire foi projetado para ajudar desenvolvedores a construir aplicações distribuídas, observáveis e prontas para produção. Ele fornece ferramentas de orquestração, integração de componentes e um conjunto abrangente de ferramentas para gerenciar arquiteturas de microsserviços em aplicações nativas da nuvem.

Como o IronPDF se integra aos projetos .NET Aspire?

O IronPDF pode ser integrado a projetos .NET Aspire para fornecer recursos avançados de geração e manipulação de PDFs. Isso permite que os desenvolvedores criem e gerenciem PDFs de forma integrada em seus aplicativos nativos da nuvem.

Quais são alguns usos comuns do IronPDF em aplicações web?

O IronPDF é frequentemente usado em aplicações web para gerar relatórios em PDF, converter conteúdo HTML em PDF e gerenciar fluxos de trabalho de documentos. Ele fornece aos desenvolvedores um conjunto robusto de ferramentas para lidar com tarefas de PDF em aplicações .NET.

Como posso solucionar problemas ao usar o IronPDF em um projeto .NET?

Para solucionar problemas do IronPDF, verifique se o pacote NuGet está instalado corretamente e se todas as dependências estão devidamente referenciadas. Verifique se há mensagens de erro no console e consulte a documentação ou o suporte do IronPDF para obter mais orientações.

Quais são os principais componentes do framework .NET Aspire?

O .NET Aspire inclui recursos de orquestração, componentes pré-configurados para desenvolvimento mais rápido e ferramentas integradas ao Visual Studio e à CLI do .NET, tudo projetado para simplificar o desenvolvimento e o gerenciamento de aplicativos nativos da nuvem.

Quais as vantagens que o .NET Aspire oferece para a arquitetura de microsserviços?

O .NET Aspire oferece um padrão de configuração consistente, orquestração robusta e integração perfeita de componentes, facilitando o gerenciamento e a implantação de arquiteturas de microsserviços em um ambiente nativo da nuvem.

Onde posso aprender mais sobre como usar o IronPDF com aplicativos .NET?

Para saber mais sobre como usar o IronPDF com aplicativos .NET, você pode visitar o blog e a documentação do IronPDF para encontrar tutoriais e exemplos. Esses recursos fornecem orientações detalhadas sobre como integrar e usar o IronPDF de forma eficaz.

Curtis Chau
Redator Técnico

Curtis Chau é bacharel em Ciência da Computação (Universidade Carleton) e se especializa em desenvolvimento front-end, com experiência em Node.js, TypeScript, JavaScript e React. Apaixonado por criar interfaces de usuário intuitivas e esteticamente agradáveis, Curtis gosta de trabalhar com frameworks modernos e criar manuais ...

Leia mais

Equipe de suporte de ferro

Estamos online 24 horas por dia, 5 dias por semana.
Bater papo
E-mail
Liga para mim