ホームページ >バックエンド開発 >C++ >EPPlus を使用して ASP.NET MVC から Excel にデータを効率的にエクスポートするにはどうすればよいですか?

EPPlus を使用して ASP.NET MVC から Excel にデータを効率的にエクスポートするにはどうすればよいですか?

Linda Hamilton
Linda Hamiltonオリジナル
2025-01-06 02:18:40857ブラウズ

How to Efficiently Export Data to Excel from ASP.NET MVC using EPPlus?

ASP.NET MVC で効果的にデータを Excel にエクスポートする方法

提供されているガイドでは、効率の低い HTML を使用して Excel にデータをエクスポートしようとしています。ベースのアプローチ。適切な Excel ファイルを作成するには、EPPlus などのライブラリを利用することをお勧めします。

EPPlus Library

EPPlus には、Excel 範囲にデータを入力するための LoadFromDataTable メソッドと LoadFromCollection メソッドが用意されています。 。これをコードに実装する方法は次のとおりです。

コード:

using (ExcelPackage package = new ExcelPackage())
{
    var ws = package.Workbook.Worksheets.Add("My Sheet");
    //true generates headers
    ws.Cells["A1"].LoadFromDataTable(dataTable, true);
}

デフォルトでは、列名またはプロパティ名がヘッダーとして使用されます。 EPPlus ライブラリを使用して、書式設定やテーブル スタイルなどを適用することもできます。

ファイルへの保存

Excel ファイルを保存するには、カスタム FileResult を作成します。 EpplusResult:

Code:

public class EpplusResult:FileResult
{
    public EpplusResult(ExcelPackage package) : base("application/vnd.openxmlformats-officedocument.spreadsheetml.sheet")
    {
        Package = package;
    }

    public ExcelPackage Package { get; private set; }
}

これにより、次のアクションを記述できます:

Code:

public FileResult ExportData()
{
    ExcelPackage package = new ExcelPackage();
    var ws = package.Workbook.Worksheets.Add("My Sheet");       
    // Load data to the worksheet
    ws.Cells[1, 1].LoadFromDataTable(table, true, TableStyles.Light1);

    return new EpplusResult(package) { FileDownloadName = "SomeFile.xlsx" };
}

ボーナス: ページのエクスポートデータ

PagedList を使用してページ データをエクスポートするには、アクションを変更できます:

コード:

public ActionResult ExportData()
{
    var pagedList = db.Customers.ToPagedList(pageNumber, pageSize);

    ExcelPackage package = new ExcelPackage();
    var ws = package.Workbook.Worksheets.Add("My Sheet");       
    ws.Cells[1, 1].LoadFromCollection(pagedList, true, TableStyles.Light1);

    return new EpplusResult(package) { FileDownloadName = "Customers.xlsx" };
}

以上がEPPlus を使用して ASP.NET MVC から Excel にデータを効率的にエクスポートするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。