IRONXLの使用

RazorでCSVとExcelをエクスポートする方法

更新済み 2024年2月20日
共有:

Razor Pagesを使用してデータをExcelファイルにエクスポートする方法をお探しですか? この記事では、IronXL for .NET を使用してその方法を説明します。

1. IronXL

IronXLこれは、Excelファイルを操作するために使用される .NET ライブラリです。 これはOpenXML SDKの上に構築されており、Excelスプレッドシートの読み取り、書き込み、および操作を簡単に行えるAPIを提供します。 IronXLは、Webアプリケーション、デスクトップアプリケーション、およびコンソールアプリケーションを含むさまざまな.NETアプリケーションで使用できます。 IronXLは、Excelドキュメントを扱うためのさまざまな機能を提供しており、次のことが可能です。読込以下のコンテンツを日本語に翻訳してください:データの書き込みセルごとに、チャートやグラフを作成し、実行複雑な計算. また、ピボットテーブルなどの高度なExcel機能もサポートしています。条件付き書式設定およびデータ検証。

データをExcelおよびCSVファイルにエクスポートすることは、ウェブ開発において一般的なタスクです。RazorとIronXLを使用すると、これを簡単に実行できます。 IronXLを使用すると、開発者はExcelスプレッドシートを簡単に作成し、ファイルやストリームに保存することができます。 Razorを使用して、Excelドキュメントへのリンクを含む動的コンテンツを生成し、ユーザーがウェブページから直接ダウンロードできるようにすることができます。 CSVファイル形式もIronXLを使用して生成され、同様にRazorを使用してダウンロードできます。 これにより、レポートやその他のデータ駆動コンテンツを簡単に作成し、他の人と簡単に共有できます。 全体的に、RazorとIronXL .NET Core Razor Pagesの組み合わせは、動的でデータ駆動型のウェブページを作成したいウェブ開発者にとって強力なツールセットを提供します。

2. 前提条件

Visual StudioでRazorを使用する前に、ユーザーが満たすべきいくつかの前提条件があります。 以下はいくつかの重要なものです:

  1. IronXLのユーザーとしては、コンピューターシステムにVisual Studioをインストールしている必要があります。 Visual Studio Community は、Microsoft の公式ウェブサイトから無料でダウンロードできます。

  2. あなたのコンピューターに .NET Core SDK がインストールされている必要もあります。 最新バージョンの .NET Core SDK は、公式の Microsoft ウェブサイトからダウンロードできます。

  3. 開始する前に、Razor Viewと連携させるためにウェブ開発環境を設定する必要があります。

3. 新しいVisual Studioプロジェクトの作成

新しいVisual Studioプロジェクトを作成するには、次の手順に従ってください:

  1. Visual Studioを開きます。

  2. スタートウィンドウで「新しいプロジェクトを作成」をクリックするか、メニューバーで「ファイル」 > 「新規」 > 「プロジェクト」をクリックしてください。

    CSV と Excel を Razor でエクスポートする方法、図 1: Visual Studio のスタートウィンドウ

    Visual Studioのスタートウィンドウ

  3. 作成したいプロジェクトの種類を選択します。Razor Pagesを使用するには、「ASP.NET Core Webアプリ」を選択し、「次へ」をクリックしてください。

    CSVおよびExcelをRazorでエクスポートする方法、図2:Visual Studioで新しい.NET Core Webアプリを作成する

    Visual Studioで新しい .NET Core Webアプリを作成する

  4. 新しいウィンドウが表示されますので、新しいプロジェクト名と場所を入力してください。 次へをクリックしてください。

    CSVおよびExcelのエクスポート方法、図3:新しいプロジェクトの設定

    新しいプロジェクトの設定

  5. 新しいウィンドウでターゲットフレームワークを選択し、「HTTPS の構成」オプションをチェックして、「作成」をクリックします。

  6. 新しいVisual Studio ASP.NET Core Webアプリプロジェクトが作成されました。

4. IronXLのインストール

IronXLライブラリは、さまざまな方法でダウンロードしてインストールすることができます。

これらは:

  • Visual Studio NuGetパッケージの使用
  • Visual Studio コマンドラインの使用。

Visual Studioを使用する方法

IronXLライブラリをインストールする最も簡単な方法は、NuGetパッケージマネージャーを使用することです。 マネージャーを開き、ブラウズタブでIronXLを検索します。 検索結果からIronXLを選択してインストールします。

以下のスクリーンショットは、Visual StudioでNuGetパッケージマネージャーを開く方法を示しています。

RazorでCSVおよびExcelをエクスポートする方法、図4: NuGetパッケージマネージャーに移動

NuGetパッケージマネージャーに移動

検索結果のIronXL:

CSVおよびExcelをRazorでエクスポートする方法、図5: NuGetパッケージマネージャUIでIronXLを検索

NuGet パッケージ マネージャー UI で IronXL を検索してください

4.2 Visual Studio コマンドラインの使用

多くの人にとって、コンソールを使用して操作を実行することは人気のある選択肢です。 コマンドラインを使用してIronXLをインストールする場合は、以下の手順に従ってください。

  • Visual Studioで、ツール > NuGet パッケージ マネージャー > パッケージ マネージャー コンソールに移動します。
  • パッケージマネージャーコンソールタブに次の行を入力してください:
Install-Package IronXL.Excel

現在、パッケージは現在のプロジェクトにダウンロード/インストールされ、使用できるようになります。

CSVおよびExcelのエクスポート方法 (Razor (レイザー))、図6: パッケージマネージャーコンソールでIronXLをインストールする

Package Manager ConsoleにてIronXLをインストールする

データをエクセルファイルにエクスポートするRazor Net Coreの方法

プロジェクトが作成されると、Razorアプリケーションのシンプルなインターフェースが作成されます。 インターフェイスを変更してExcelエクスポートにします。

方法:RazorでCSVおよびExcelをエクスポートする、図7:新しく作成されたプロジェクトのWebインターフェース

新しく作成されたプロジェクトのWebインターフェース

Pagesディレクトリのindex.cshtmlファイルを編集して、上記のインターフェースを変更します。

@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 and togather 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 and togather 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 ReadOnly Property () As IndexModel
	ViewData ("Title") = "Home page"
End Property
'INSTANT VB TODO TASK: The following line uses invalid syntax:
'<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 @and togather 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>
VB   C#

このコードはホームページのインターフェースを変更し、エクスポートボタンを追加します。

RazorでCSVおよびExcelをエクスポートする方法、図8: エクスポートボタンを含む新しいインターフェース

新しいインターフェイスにはエクスポートボタンがあります

次に、index.cshtml.cs ファイルに onPostExport メソッドを作成し、次のコードを記述します。 このコードはワークシートを生成し、列名を太字で書き込みます。 ユーザーはスタイルを使用してフォントサイズを設定したり、列の背景色を設定したりすることもできます。 SQL Serverやその他のデータベースサーバーからExcelにデータベースのテーブルデータをエクスポートすることと同じです。

public FileResult OnPostExport()
{
    WorkBook workBook = new WorkBook(IronXL.ExcelFileFormat.XLSX);
    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 = "Persent Age";
    workSheet ["A1:D1"].Style.Font.Bold = true;
    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 File(workBook.ToStream().ToArray(), "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", "Exported.xlsx");
}
public FileResult OnPostExport()
{
    WorkBook workBook = new WorkBook(IronXL.ExcelFileFormat.XLSX);
    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 = "Persent Age";
    workSheet ["A1:D1"].Style.Font.Bold = true;
    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 File(workBook.ToStream().ToArray(), "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", "Exported.xlsx");
}
Public Function OnPostExport() As FileResult
	Dim workBook As New WorkBook(IronXL.ExcelFileFormat.XLSX)
	Dim workSheet As 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 = "Persent Age"
	workSheet ("A1:D1").Style.Font.Bold = True
	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 File(workBook.ToStream().ToArray(), "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", "Exported.xlsx")
End Function
VB   C#

上記のコードはワークブックを作成し、そのファイルをExcelシートとして返します。 このメソッドはボタンにリンクされ、ボタンがクリックされると、自動的にXLSXエクスポートファイルを作成してダウンロードします。

CSVおよびExcelのエクスポート方法Razorでの、図9:ブラウザでXLSXファイルをエクスポートする

ブラウザでXLSXファイルをエクスポートする

RazorでCSVとExcelをエクスポートする方法, 図10: エクスポートされたXLSXファイルのデータ

エクスポートされたXLSXファイルのデータ

データをCSVファイルにエクスポート

上記と同様に、上記のコードサンプルでは、1行のコードで変更を加えてCSVテキストファイルを簡単にエクスポートできます。 以下のソースコードのリターンファイルコードをこれに置き換えるだけで、RazorページがCSVファイルを返します。

return File(workBook.ToStream().ToArray(), "text/csv", "Student.csv");
return File(workBook.ToStream().ToArray(), "text/csv", "Student.csv");
Return File(workBook.ToStream().ToArray(), "text/csv", "Student.csv")
VB   C#

RazorでCSVとExcelをエクスポートする方法、図11:ブラウザでCSVファイルをエクスポートする

ブラウザでCSVファイルをエクスポートする

RazorでCSVとExcelをエクスポートする方法、図12:エクスポートされたCSVファイルのデータ

エクスポートされたCSVファイルのデータ

7. 結論

データをExcelシートやCSVファイルにエクスポートすることは、ウェブ開発において一般的な作業であり、RazorおよびIronXLを使用することで簡単に達成できます。 IronXLを使用すると、開発者はExcelスプレッドシートを簡単に作成し、ファイルやストリームに保存することができます。 Razorを使用して、Excelドキュメントへのリンクを含む動的コンテンツを生成し、ユーザーがウェブページから直接ダウンロードできるようにすることができます。 これにより、レポートやその他のデータ駆動コンテンツを簡単に作成し、他の人と簡単に共有できます。

RazorとIronXL .NET Core Razor Pagesの組み合わせは、動的でデータ駆動型のウェブページを作成しようとするウェブ開発者にとって強力なツールセットを提供します。 RazorとIronXLの使用を開始するには、Visual Studioと.NET Core SDKがインストールされている必要があります。 その後、新しいVisual Studioプロジェクトを作成し、IronXLライブラリをインストールすることは簡単に行えます。 最後に、ホームページのインターフェースを変更し、OnPostExportメソッドを作成することにより、開発者は簡単なステップでデータをExcelドキュメントにエクスポートすることができます。

IronXL、Razor、およびデータをExcelおよびCSVファイルにエクスポートする方法について詳しく知るには、以下をご覧ください:ページ.

IronXLは非商用開発目的で無料で使用できます。 A無料試用本番環境でのテストが可能です。 内容が不足しているようです。続けて翻訳するテキストを教えてください。価格プラン価格とライセンスの詳細については、こちらをご覧ください。

ユーザーもまた、次の利点を享受できますIron Suite、5つのプロフェッショナルASP.NET Coreライブラリを含むスイートIronXLIronPDF、など。

< 以前
Excelで行を固定する方法 (初心者ガイド)
次へ >
Excelで全ての行を再表示する方法