Read Excel Files in ASP.NET MVC Using IronXL
このチュートリアルは、開発者がASP.NET MVCアプリでIronXLを使用してExcelファイルの解析を実装する方法を案内します。
クイックスタート: ExcelシートをMVCでDataTableにロードして変換する
この例では、数秒で始める方法を示します: Excelワークブックをロードし、最初のワークシートを選択し、System.Data.DataTableに変換します。IronXLを使用し、Interopは不要で、手間もかかりません。
Get started making PDFs with NuGet now:
Install IronXL with NuGet Package Manager
Copy and run this code snippet.
var dataTable = IronXL.WorkBook.Load("CustomerData.xlsx").DefaultWorkSheet.ToDataTable(true);Deploy to test on your live environment
最小ワークフロー (5ステップ)
- ASP.NETでExcelファイルを読むためのC#ライブラリをインストールします
- Excelファイルのターゲットシートをロードしてアクセスする
ToDataTableメソッドにアクセスしてViewに返します- ループを使用してExcelデータをウェブページに表示する
- すべてのデータを反復して、HTMLテーブルを作成する
ASP.NET プロジェクトを作成する
Visual Studio 2022(または同様の製品バージョン)を使用して、新しいASP.NETプロジェクトを作成します。 特定のプロジェクトに必要な追加のNuGetパッケージやソースコードを追加します。
IronXL ライブラリをインストールする
今日あなたのプロジェクトでIronXLを無料トライアルで使用開始。
新しいプロジェクトを作成した後、IronXLライブラリをインストールする必要があります。 以下の手順に従ってIronXLライブラリをインストールします。 NuGetパッケージマネージャーコンソールを開き、次のコマンドを実行します。
Install-Package IronXL.Excel
Excelファイルを読み込む
ASP.NETプロジェクトのデフォルトコントローラーを開きます(例:HomeController.cs)し、Index メソッドを以下のコードに置き換えます。
public ActionResult Index()
{
// Load the Excel workbook from a specified path.
WorkBook workBook = WorkBook.Load(@"C:\Files\Customer Data.xlsx");
// Access the first worksheet from the workbook.
WorkSheet workSheet = workBook.WorkSheets.First();
// Convert the worksheet data to a DataTable object.
var dataTable = workSheet.ToDataTable();
// Send the DataTable to the view for rendering.
return View(dataTable);
}
public ActionResult Index()
{
// Load the Excel workbook from a specified path.
WorkBook workBook = WorkBook.Load(@"C:\Files\Customer Data.xlsx");
// Access the first worksheet from the workbook.
WorkSheet workSheet = workBook.WorkSheets.First();
// Convert the worksheet data to a DataTable object.
var dataTable = workSheet.ToDataTable();
// Send the DataTable to the view for rendering.
return View(dataTable);
}
Public Function Index() As ActionResult
' Load the Excel workbook from a specified path.
Dim workBook As WorkBook = WorkBook.Load("C:\Files\Customer Data.xlsx")
' Access the first worksheet from the workbook.
Dim workSheet As WorkSheet = workBook.WorkSheets.First()
' Convert the worksheet data to a DataTable object.
Dim dataTable = workSheet.ToDataTable()
' Send the DataTable to the view for rendering.
Return View(dataTable)
End Function
Index アクションメソッドでは、IronXLのLoad メソッドを使用してExcelファイルをロードします。 Excelファイルのパス(ファイル名を含む)がメソッド呼び出しのパラメーターとして提供されます。 次に、最初のExcelシートを作業シートとして選択し、そこに含まれるデータをDataTable オブジェクトにロードします。 最後に、DataTable はフロントエンドに送信されます。
ウェブページにExcelデータを表示する
次の例では、前の例で返されたDataTableをウェブブラウザで表示する方法を示します。
この例で使用される作業用Excelファイルは以下の通りです:

Excelファイル
index.cshtml(indexビュー)を開き、コードを以下のHTMLコードに置き換えます。
@{
ViewData["Title"] = "Home Page";
}
@using System.Data
@model DataTable
<div class="text-center">
<h1 class="display-4">Welcome to IronXL Read Excel MVC</h1>
</div>
<table class="table table-dark">
<tbody>
@foreach (DataRow row in Model.Rows)
{
<tr>
@for (int i = 0; i < Model.Columns.Count; i++)
{
<td>@row[i]</td>
}
</tr>
}
</tbody>
</table>
@{
ViewData["Title"] = "Home Page";
}
@using System.Data
@model DataTable
<div class="text-center">
<h1 class="display-4">Welcome to IronXL Read Excel MVC</h1>
</div>
<table class="table table-dark">
<tbody>
@foreach (DataRow row in Model.Rows)
{
<tr>
@for (int i = 0; i < Model.Columns.Count; i++)
{
<td>@row[i]</td>
}
</tr>
}
</tbody>
</table>
@
If True Then
ViewData("Title") = "Home Page"
End If
'INSTANT VB WARNING: An assignment within expression was extracted from the following statement:
'ORIGINAL LINE: using System.Data model DataTable <div class="text-center"> <h1 class="display-4"> Welcome to IronXL Read Excel MVC</h1> </div> <table class="table table-dark"> <tbody> foreach(DataRow row in Model.Rows)
"display-4"> Welcome [to] IronXL Read Excel MVC</h1> </div> <table class="table table-dark"> (Of tbody) foreach(DataRow row in Model.Rows)
If True Then
'INSTANT VB WARNING: An assignment within expression was extracted from the following statement:
'ORIGINAL LINE: using System.Data model DataTable <div class="text-center"> <h1 class="display-4"> Welcome to IronXL Read Excel MVC</h1> </div> <table class
"text-center"> <h1 class="display-4"> Welcome [to] IronXL Read Excel MVC</h1> </div> <table class
[using] System.Data model DataTable <div class="text-center"> <h1 class
'INSTANT VB TODO TASK: Local functions are not converted by Instant VB:
' (Of tr) @for(int i = 0; i < Model.Columns.Count; i++)
' {
' <td> @row[i]</td>
' }
</tr>
End If
'INSTANT VB TODO TASK: The following line uses invalid syntax:
' </tbody> </table>
上記のコードは、Indexメソッドから返されたDataTableをモデルとして使用します。 @forループを使用してテーブルの各行をウェブページに印刷し、装飾のためにBootstrapフォーマットを含めます。
プロジェクトを実行すると、以下に示す結果が得られます。

Bootstrapテーブル
よくある質問
Interopを使用せずにASP.NET MVCでExcelファイルを読むにはどうすればよいですか?
IronXLライブラリを利用することで、Interopを使用せずにASP.NET MVCでExcelファイルを読むことができます。まず、NuGet経由でIronXLをインストールし、WorkBook.Loadメソッドを使用してExcelファイルをロードします。ワークシートにアクセスし、それをDataTableに変換してさらに処理します。
ASP.NET MVCを使用してウェブページにExcelデータを表示するために必要なステップは何ですか?
ASP.NET MVCを使用してウェブページにExcelデータを表示するには、IronXLでExcelファイルをロードし、それをDataTableに変換し、ビューに渡します。ビューでは、Razor構文を使用してDataTableを反復し、データをHTMLテーブルとしてレンダリングします。
ASP.NETアプリケーションでExcelファイルを処理するために必要なライブラリをインストールする方法は?
ASP.NETアプリケーションでExcelファイルを処理するためには、Visual StudioでNuGetパッケージマネージャーコンソールを開き、コマンドInstall-Package IronXL.Excelを実行してIronXLライブラリをインストールします。
ASP.NET MVCでのExcel操作にIronXLを使用する利点は何ですか?
IronXLは、Excel Interopを必要とせずにExcelファイルの読み取り、書き込み、および操作を可能にする使いやすいAPIを提供することで、ASP.NET MVCでのExcel操作を簡素化し、パフォーマンスの向上と複雑性の低減を図ります。
ASP.NET MVCでExcelワークシートをDataTableに変換するにはどうすればよいですか?
ASP.NET MVCでExcelファイルをIronXLでロードした後、ToDataTableメソッドを使用してワークシートをDataTableに変換できます。これにより、データの処理と操作が容易になります。
IronXLはASP.NET Core MVCアプリケーションでExcel処理に使用できますか?
はい、IronXLはASP.NET Core MVCアプリケーションと互換性があり、Excel Interopに依存することなくExcelファイルを効率的に読み取り、操作するために使用できます。
Excelファイルを読むためにコントローラーにどのようなコード修正が必要ですか?
デフォルトのコントローラー、例えば HomeController.cs を修正し、IronXL の WorkBook.Load を使用して Excel ワークブックをロードし、ワークシートデータを DataTable に変換してビューに渡します。
IronXLはASP.NETでのExcelファイル読み取りプロセスをどのように改善しますか?
IronXLは、Excel Interopを必要とせずにExcelデータのシームレスな読み取り、書き込み、および操作を可能にする直感的なAPIを提供することで、ASP.NETにおけるExcelファイル読み取りプロセスを向上させます。

