Ir para o conteúdo do rodapé
USANDO O IRONXL

Como exportar arquivos CSV e Excel no Razor

Procurando uma maneira de exportar dados para um arquivo Excel usando Razor Pages? Este artigo ensina como fazer isso usando IronXL for .NET.

1. IronXL

IronXL é uma biblioteca .NET usada para trabalhar com arquivos Excel. É construído em cima do OpenXML SDK e oferece uma API simples para leitura, escrita e manipulação de planilhas Excel. IronXL pode ser usado em uma variedade de aplicações .NET, incluindo Aplicações Web, Aplicações Desktop e Aplicações de Console. IronXL oferece uma gama de recursos para trabalhar com documentos Excel, incluindo a capacidade de ler e escrever dados em células individuais, criar gráficos e gráficos, e realizar cálculos complexos. Também suporta recursos avançados do Excel, como tabelas dinâmicas, formatação condicional e validação de dados.

Exportar dados para arquivos Excel e CSV é uma tarefa comum no desenvolvimento web, e Razor e IronXL tornam isso fácil de realizar. Com o IronXL, os desenvolvedores podem criar facilmente planilhas Excel e salvá-las em um arquivo ou fluxo. Razor pode então ser usado para gerar conteúdo dinâmico que inclui links para o documento Excel, permitindo que os usuários os baixem diretamente da página web. O formato de arquivo CSV também pode ser gerado usando IronXL e baixado de forma semelhante usando Razor. Isso torna simples criar relatórios e outros conteúdos orientados por dados que podem ser facilmente compartilhados com outros. No geral, a combinação de Razor e IronXL .NET Core Razor Pages fornece um conjunto de ferramentas poderoso para desenvolvedores web que buscam criar páginas web dinâmicas e orientadas por dados.

2. Pré-requisitos

Antes de usar o Razor no Visual Studio, há alguns pré-requisitos que os usuários devem ter em vigor. Aqui estão alguns dos importantes:

  1. Como usuário do IronXL, você precisa ter o Visual Studio instalado no seu sistema de computador. Você pode baixar o Visual Studio Community gratuitamente no site oficial da Microsoft.
  2. Você também precisa ter o .NET Core SDK instalado em seu computador. Você pode baixar a versão mais recente do .NET Core SDK no site oficial da Microsoft.
  3. Seu ambiente de Desenvolvimento Web deve estar configurado antes de começar a trabalhar com o Razor View.

3. Criando um Novo Projeto no Visual Studio

Para criar um novo projeto no Visual Studio, siga estas etapas:

  1. Abra o Visual Studio.
  2. Clique em "Criar um Novo Projeto" na janela de início, ou clique em "Arquivo" > "Novo" > "Projeto" na barra de menu.

    Como Exportar CSV e Excel no Razor, Figura 1: janela inicial do Visual Studio Janela de início do Visual Studio

  3. Selecione o tipo de projeto que você deseja criar, para usar Razor Pages, selecione ASP.NET Core Web App e clique em Avançar.

    Como Exportar CSV e Excel no Razor, Figura 2: Crie um novo .NET Core Web App no Visual Studio Criar um novo .NET Core Web App no Visual Studio

  4. Uma nova janela aparecerá, escreva o nome do seu novo projeto e localização. Então clique em Avançar.

    Como Exportar CSV e Excel no Razor, Figura 3: Configure o novo projeto Configure o novo projeto

  5. Agora na nova janela selecione seu Framework de destino, marque a opção configurar para HTTPS e clique em criar.
  6. Assim, seu novo Projeto Visual Studio ASP.NET Core Web App é criado.

4. Instalar IronXL

A Biblioteca IronXL pode ser baixada e instalada de maneiras diferentes.

Estes são:

  • Usando pacotes NuGet do Visual Studio.
  • Utilizando a linha de comando do Visual Studio.

4.1 Usando o Visual Studio

Para instalar a biblioteca IronXL, a abordagem mais simples é usar o Gerenciador de Pacotes NuGet. Abra o gerenciador e procure por IronXL na guia de navegação. Escolha o IronXL nos resultados da pesquisa e instale-o.

A captura de tela abaixo mostra como abrir o Gerenciador de Pacotes NuGet no Visual Studio.

Como Exportar CSV e Excel no Razor, Figura 4: Navegue até o Gerenciador de Pacotes NuGet Acesse o Gerenciador de Pacotes NuGet.

IronXL nos resultados da pesquisa:

Como Exportar CSV e Excel no Razor, Figura 5: Procure IronXL na interface do Gerenciador de Pacotes NuGet Pesquisar por IronXL na UI do Gerenciador de Pacotes NuGet

4.2 Usando a linha de comando do Visual Studio

Usar um console para realizar operações é uma escolha popular para muitos. Se preferir instalar o IronXL através da linha de comando, você pode seguir estes passos:

  • No Visual Studio, vá para Ferramentas > Gerenciador de Pacotes NuGet > Console do Gerenciador de Pacotes.
  • Insira a seguinte linha na guia do Console do Gerenciador de Pacotes, que instalará o pacote:
Install-Package IronXl.Excel

Agora o pacote será baixado/instalado no projeto atual e estará pronto para uso.

Como Exportar CSV e Excel no Razor, Figura 6: Instale o IronXL no Console do Gerenciador de Pacotes Instalar IronXL no Console do Gerenciador de Pacotes

5. Exportar Dados para um Arquivo Excel no Razor Net Core

Uma vez criado o projeto, uma interface simples do aplicativo Razor é criada. Agora, altere a interface para exportar para o Excel.

Como Exportar CSV e Excel no Razor, Figura 7: A interface Web do projeto recém-criado A interface Web do projeto recém-criado

Altere a interface acima editando o arquivo index.cshtml no diretório Pages.

@page
@model IndexModel
@{
    ViewData["Title"] = "Home page";
}
<div class="text-center">
    <h1 class="display-4">IronXL Generate Excel File</h1>
    <p class="m-5">This will be the combination of Razor and IronXL, together they will Export data to Excel file.</p>
    <form method="post" asp-page-handler="Export">
        <button class="btn btn-success p-3">Export Excel File!</button>
    </form>
</div>
@page
@model IndexModel
@{
    ViewData["Title"] = "Home page";
}
<div class="text-center">
    <h1 class="display-4">IronXL Generate Excel File</h1>
    <p class="m-5">This will be the combination of Razor and IronXL, together they will Export data to Excel file.</p>
    <form method="post" asp-page-handler="Export">
        <button class="btn btn-success p-3">Export Excel File!</button>
    </form>
</div>
$vbLabelText   $csharpLabel

Este código alterará a interface da página inicial e adicionará o botão de exportação.

Como Exportar CSV e Excel no Razor, Figura 8: A nova interface com um botão de exportação A nova interface com um botão de exportação

Agora crie o método OnPostExport no arquivo index.cshtml.cs e escreva o seguinte código. Esse código gera uma planilha, escreve nomes de colunas em negrito e permite definir outras opções de estilo, como tamanho da fonte e cor de fundo. Você pode pensar nisso como um exemplo simples de exportação de dados de um banco de dados para um arquivo Excel.

public FileResult OnPostExport()
{
    // Create a new workbook with the Excel file format
    WorkBook workBook = new WorkBook(IronXl.ExcelFileFormat.XLSX);

    // Create a new worksheet in the workbook
    WorkSheet workSheet = workBook.CreateWorkSheet("data");

    // Add data and styles to the new worksheet
    workSheet["A1"].Value = "Name";
    workSheet["B1"].Value = "Email";
    workSheet["C1"].Value = "Marks";
    workSheet["D1"].Value = "Percentage";

    // Set styling for column headers
    workSheet["A1:D1"].Style.Font.Bold = true;

    // Filling the worksheet with data
    workSheet["A2"].Value = "Nick";
    workSheet["A3"].Value = "Roy";
    workSheet["A4"].Value = "Chris";
    workSheet["B2"].Value = "Nick@gmail.com";
    workSheet["B3"].Value = "Roy123@gmail.com";
    workSheet["B4"].Value = "Chris1999@gmail.com";
    workSheet["C2"].Value = "850";
    workSheet["C3"].Value = "710";
    workSheet["C4"].Value = "990";
    workSheet["D2"].Value = "85%";
    workSheet["D3"].Value = "71%";
    workSheet["D4"].Value = "99%";

    // Return the file as an Excel sheet
    return File(workBook.ToStream().ToArray(), "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", "Exported.xlsx");
}
public FileResult OnPostExport()
{
    // Create a new workbook with the Excel file format
    WorkBook workBook = new WorkBook(IronXl.ExcelFileFormat.XLSX);

    // Create a new worksheet in the workbook
    WorkSheet workSheet = workBook.CreateWorkSheet("data");

    // Add data and styles to the new worksheet
    workSheet["A1"].Value = "Name";
    workSheet["B1"].Value = "Email";
    workSheet["C1"].Value = "Marks";
    workSheet["D1"].Value = "Percentage";

    // Set styling for column headers
    workSheet["A1:D1"].Style.Font.Bold = true;

    // Filling the worksheet with data
    workSheet["A2"].Value = "Nick";
    workSheet["A3"].Value = "Roy";
    workSheet["A4"].Value = "Chris";
    workSheet["B2"].Value = "Nick@gmail.com";
    workSheet["B3"].Value = "Roy123@gmail.com";
    workSheet["B4"].Value = "Chris1999@gmail.com";
    workSheet["C2"].Value = "850";
    workSheet["C3"].Value = "710";
    workSheet["C4"].Value = "990";
    workSheet["D2"].Value = "85%";
    workSheet["D3"].Value = "71%";
    workSheet["D4"].Value = "99%";

    // Return the file as an Excel sheet
    return File(workBook.ToStream().ToArray(), "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", "Exported.xlsx");
}
$vbLabelText   $csharpLabel

Esse código acima criará um livro de trabalho e retornará o arquivo como uma planilha Excel. Este método está ligado ao botão e, assim que o botão for clicado, ele criará e baixará automaticamente o arquivo exportado XLSX.

Como Exportar CSV e Excel no Razor, Figura 9: Exporte um arquivo XLSX no navegador Exportar um arquivo XLSX no navegador

Como Exportar CSV e Excel no Razor, Figura 10: Os dados no arquivo XLSX exportado Os dados no arquivo XLSX exportado

6. Exportar Dados para Arquivo CSV

Você pode facilmente exportar arquivos de texto CSV com uma alteração no código acima. Basta substituir o código de retorno do arquivo pelo seguinte, e sua página Razor retornará um arquivo CSV.

return File(workBook.ToStream().ToArray(), "text/csv", "Student.csv");
return File(workBook.ToStream().ToArray(), "text/csv", "Student.csv");
$vbLabelText   $csharpLabel

Como Exportar CSV e Excel no Razor, Figura 11: Exporte um arquivo CSV no navegador Exportar um arquivo CSV no navegador

Como Exportar CSV e Excel no Razor, Figura 12: Os dados no arquivo CSV exportado Os dados no arquivo CSV exportado

7. Conclusão

Exportar dados para planilhas Excel e arquivos CSV é uma tarefa comum no desenvolvimento web, e Razor e IronXL tornam isso fácil de realizar. Com o IronXL, os desenvolvedores podem criar facilmente planilhas Excel e salvá-las em um arquivo ou fluxo. Razor pode então ser usado para gerar conteúdo dinâmico que inclui links para o documento Excel, permitindo que os usuários os baixem diretamente da página web. Isso torna simples criar relatórios e outros conteúdos orientados por dados que podem ser facilmente compartilhados com outros.

A combinação de Razor e IronXL .NET Core Razor Pages fornece um conjunto de ferramentas poderoso para desenvolvedores web que buscam criar páginas web dinâmicas e orientadas a dados. Para começar a usar Razor e IronXL, é necessário ter o Visual Studio e o .NET Core SDK instalados. Depois disso, criar um novo projeto no Visual Studio e instalar a biblioteca IronXL pode ser feito facilmente. Finalmente, mudando a interface da página inicial e criando um método OnPostExport, os desenvolvedores podem exportar dados para documentos Excel em alguns passos simples.

Para saber mais sobre IronXL, Razor e como exportar dados para arquivos Excel e CSV, por favor, visite a seguinte página.

IronXL é gratuito para uso em finalidades de desenvolvimento não comerciais. Uma avaliação gratuita está disponível para teste em produção. Consulte os planos de preços para mais detalhes sobre preços e licenciamento.

Os usuários também podem se beneficiar do Iron Suite, um conjunto de 5 bibliotecas profissionais ASP.NET Core, incluindo IronXL, IronPDF, e mais.

Perguntas frequentes

Como posso exportar dados para o Excel usando o Razor Pages?

Você pode usar o IronXL em conjunto com o Razor Pages para exportar dados para o Excel. Comece instalando o IronXL através do Gerenciador de Pacotes NuGet ou da Linha de Comando do Visual Studio. Em seguida, crie uma nova pasta de trabalho e uma nova planilha, preencha-a com dados e exporte-a como um arquivo do Excel usando o Razor.

Quais são os passos necessários para configurar um ambiente para exportar dados para o Excel usando o Razor?

Para configurar seu ambiente, você precisará do Visual Studio e do SDK do .NET Core. Crie um novo projeto de Aplicativo Web ASP.NET Core, instale o IronXL a partir do NuGet e modifique a interface Razor para adicionar funcionalidades de exportação.

Qual é o processo para exportar dados para um arquivo CSV em uma aplicação .NET?

Para exportar dados como um arquivo CSV usando o IronXL, modifique o código da sua Razor Page para retornar o arquivo no formato 'text/csv'. Isso envolve usar o IronXL para manipular os dados da planilha e especificar CSV como formato de saída.

Posso formatar planilhas do Excel ao exportá-las do Razor Pages?

Sim, o IronXL permite aplicar estilos às planilhas do Excel ao exportá-las do Razor Pages. Você pode personalizar fontes, cores e outros elementos de formatação para aprimorar a apresentação dos seus dados.

É possível usar o IronXL para projetos não comerciais?

O IronXL está disponível gratuitamente para fins de desenvolvimento não comercial. Você também pode usar uma versão de avaliação gratuita para testes em ambientes de produção, e planos de preços detalhados estão disponíveis para uso comercial.

Como o IronXL simplifica tarefas de desenvolvimento web que envolvem arquivos Excel e CSV?

IronXL simplifica o desenvolvimento web ao fornecer uma API poderosa para gerar e manipular arquivos Excel e CSV diretamente do Razor Pages. Elimina a necessidade de Interop, tornando as tarefas de exportação de dados mais eficientes e fáceis de implementar.

Por que os desenvolvedores escolheriam Razor e IronXL para tarefas de exportação de dados?

Os desenvolvedores escolhem Razor e IronXL por sua facilidade de uso, flexibilidade e recursos poderosos. Eles permitem a integração perfeita de funcionalidades de exportação de dados em aplicativos web, possibilitando a criação de conteúdo dinâmico e orientado a dados que pode ser compartilhado sem esforço.

Jordi Bardia
Engenheiro de Software
Jordi é extremamente proficiente em Python, C# e C++, e quando não está utilizando suas habilidades na Iron Software, dedica-se à programação de jogos. Compartilhando as responsabilidades por testes, desenvolvimento e pesquisa de produtos, Jordi agrega imenso valor à melhoria contínua dos produtos. Essa experiência diversificada o mantém ...
Leia mais

Iron Support Team

We're online 24 hours, 5 days a week.
Chat
Email
Call Me