Anwendungsfälle für Aspose.Cells FOSS für .NET

Anwendungsfälle für Aspose.Cells FOSS für .NET

Aspose.Cells FOSS for .NET ist eine rein verwaltete .NET‑Bibliothek, die XLSX‑Dateien liest und schreibt, ohne Microsoft Office oder externe Abhängigkeiten zu benötigen. Die folgenden Anwendungsfälle zeigen, wo die Bibliothek in realen .NET‑Anwendungen eingesetzt werden kann.


Berichtserstellung

Erzeugen Sie XLSX-Berichte programmgesteuert in serverseitigen oder Batch-Anwendungen. Verwenden Sie Workbook, Worksheet und Cell.PutValue(), um strukturierte Daten zu schreiben, und rufen Sie dann Workbook.Save() auf, um die Datei zu erzeugen.

using Aspose.Cells_FOSS;

var wb = new Workbook();
var ws = wb.Worksheets[0];
ws.Name = "Monthly Report";

ws.Cells["A1"].PutValue("Product");
ws.Cells["B1"].PutValue("Revenue");

ws.Cells["A2"].PutValue("Widget A");
ws.Cells["B2"].PutValue(12500.00m);

ws.Cells["A3"].PutValue("Widget B");
ws.Cells["B3"].PutValue(8750.00m);

ws.Cells["B4"].Formula = "=SUM(B2:B3)";

wb.Save("monthly-report.xlsx");

Dieses Muster skaliert auf beliebig viele Zeilen und kann durch Daten aus einer Datenbank oder einer API‑Antwort gesteuert werden.


Verarbeitung hochgeladener Tabellenkalkulationen

Lesen und validieren Sie XLSX-Dateien, die von Benutzern über ein Webformular oder einen API-Endpunkt übermittelt werden. Der Workbook‑Konstruktor akzeptiert ein Stream, sodass keine temporäre Datei auf die Festplatte geschrieben werden muss.

using Aspose.Cells_FOSS;

// IFormFile from ASP.NET Core controller
public async Task<IActionResult> Upload(IFormFile file)
{
    using var stream = file.OpenReadStream();
    var opts = new LoadOptions { TryRepairPackage = true };
    var wb = new Workbook(stream, opts);

    var ws = wb.Worksheets[0];
    var firstRow = ws.Cells["A1"].StringValue;
    // ... validate and process rows

    return Ok(new { sheets = wb.Worksheets.Count, firstCell = firstRow });
}

Verwenden Sie LoadDiagnostics.HasRepairs, um Dateien zu erkennen, die eine strukturelle Reparatur erforderten, und diese Informationen den Benutzern zur Verfügung zu stellen.


Datenpipeline-Extraktion

Extrahieren Sie Zellendaten aus XLSX‑Exporten, die von Drittanbietersystemen erstellt wurden, und speisen Sie die Werte in eine Datenbank oder einen nachgelagerten Dienst ein. Lesen Sie Zellwerte über Cell.StringValue und Cell.Value mithilfe von Zeilen‑ und Spaltenkoordinaten.

using Aspose.Cells_FOSS;

var wb = new Workbook("export.xlsx");
var ws = wb.Worksheets[0];

var records = new List<(string sku, double qty)>();
for (int row = 1; row <= 100; row++) // iterate known data range
{
    var sku = ws.Cells[row, 0].StringValue;
    if (string.IsNullOrEmpty(sku)) break;
    var qty = (double)ws.Cells[row, 1].Value;
    records.Add((sku, qty));
}

Console.WriteLine($"Extracted {records.Count} records");

Anwenden von Datenvalidierung vor dem Speichern

Fügen Sie Dropdown‑ oder Bereichsvalidierungsregeln hinzu, bevor Sie eine XLSX‑Vorlage an Endbenutzer ausliefern, um sicherzustellen, dass sie nur zulässige Werte eingeben.

using Aspose.Cells_FOSS;

var wb = new Workbook();
var ws = wb.Worksheets[0];

// Status column: dropdown
var statusVal = ws.Validations[ws.Validations.Add(CellArea.CreateCellArea("A2", "A100"))];
statusVal.Type = ValidationType.List;
statusVal.Formula1 = "\"Open,In Progress,Closed\"";
statusVal.InCellDropDown = true;

// Score column: 0–10 decimal range
var scoreVal = ws.Validations[ws.Validations.Add(CellArea.CreateCellArea("B2", "B100"))];
scoreVal.Type = ValidationType.Decimal;
scoreVal.Operator = OperatorType.Between;
scoreVal.Formula1 = "0";
scoreVal.Formula2 = "10";
scoreVal.ShowError = true;

wb.Save("template-with-validation.xlsx");

Formatierung der Ausgabe für bessere Lesbarkeit

Wenden Sie Zellstile — Schriftarten, Füllfarben, Zahlenformate, Rahmen — an, um ein poliertes Ergebnis zu erzeugen. Erstellen Sie eine Style‑Instanz direkt, konfigurieren Sie deren Eigenschaften und wenden Sie sie mit Cell.SetStyle() an.

using Aspose.Cells_FOSS;

var wb = new Workbook();
var ws = wb.Worksheets[0];

// Header style
var headerStyle = new Style();
headerStyle.Font.IsBold = true;
headerStyle.Font.Size = 12;
headerStyle.ForegroundColor = System.Drawing.Color.FromArgb(0x4F, 0x81, 0xBD);
headerStyle.Pattern = FillPattern.Solid;

ws.Cells["A1"].PutValue("Name");
ws.Cells["B1"].PutValue("Score");
ws.Cells["A1"].SetStyle(headerStyle);
ws.Cells["B1"].SetStyle(headerStyle);

// Number format for score column
var numStyle = new Style();
numStyle.Custom = "0.00";
ws.Cells["B2"].SetStyle(numStyle);
ws.Cells["B2"].PutValue(98.5m);

wb.Save("styled-report.xlsx");

Siehe auch

 Deutsch