Lietošanas gadījumi Aspose.Cells FOSS .NET
Aspose.Cells FOSS for .NET ir tīri pārvaldīta .NET bibliotēka, kas lasa un raksta XLSX failus, neprasot Microsoft Office vai kādas ārējas atkarības. Zemāk sniegtie lietošanas gadījumi ilustrē, kur bibliotēka iederas reālu pasaules .NET lietojumprogrammās.
Atskaites ģenerēšana
Ģenerējiet XLSX atskaites programmatiski servera pusē vai partijas lietojumprogrammās. Izmantojiet Workbook, Worksheet un Cell.PutValue(), lai rakstītu strukturētus datus, pēc tam izsauciet Workbook.Save(), lai izveidotu failu.
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");Šis paraugs mērogojas uz jebkuru rindu skaitu un var tikt vadīts ar datiem no datubāzes vai API atbildes.
Apstrādā augšupielādētās izklājlapas
Nolasiet un pārbaudiet XLSX failus, ko lietotāji iesniedz caur tīmekļa formu vai API galapunktu. Workbook konstruktoram tiek pieņemts Stream, tāpēc nav jāraksta pagaidu fails uz diska.
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 });
}Izmantojiet LoadDiagnostics.HasRepairs, lai noteiktu failus, kuriem bija nepieciešama struktūras remonts, un sniegtu šo informāciju lietotājiem.
Datu cauruļvadu izguve
Izvelciet šūnu datus no XLSX eksporta, ko izveido trešo pušu sistēmas, un ievadiet vērtības datu bāzē vai turpmākā pakalpojumā. Lasiet šūnu vērtības, izmantojot Cell.StringValue un Cell.Value, ar rindas un kolonnas koordinātēm.
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");Datu validācijas piemērošana pirms saglabāšanas
Pievienojiet nolaižamās izvēles vai diapazona validācijas noteikumus pirms XLSX veidnes piegādes galalietotājiem, nodrošinot, ka viņi aizpilda tikai pieņemamās vērtības.
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");Izvades stilizēšana lasāmības uzlabošanai
Pielietojiet šūnas stilus — fontus, aizpildījuma krāsas, skaitļu formātus, robežas — lai iegūtu glītu rezultātu. Izveidojiet Style instanci tieši, konfigurējiet tās īpašības un piemērojiet to ar Cell.SetStyle().
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");