Sådan arbejder du med kerne‑arbejdsbogsindstillinger i .NET
Aspose.Cells FOSS for .NET eksponerer konfiguration på arbejdsbogsniveau gennem Workbook.Settings (lokalitet og datumsystem), Workbook.DocumentProperties (forfattermetadata), Workbook.LoadDiagnostics (reparationsrapport) og SaveOptions (gemmeadfærd). Installer med dotnet add package Aspose.Cells_FOSS.
Trin-for-trin guide
Trin 1: Installer pakken
dotnet add package Aspose.Cells_FOSSTrin 2: Importer navnerummet
using Aspose.Cells_FOSS;
using System.Globalization;Trin 3: Konfigurer WorkbookSettings
Workbook.Settings returnerer et WorkbookSettings‑objekt. Indstil Date1904 = true for macOS‑oprindte filer, der bruger 1904‑datumsystemet. Indstil Culture for at styre tal‑ og datoparsnings‑lokale.
using Aspose.Cells_FOSS;
using System.Globalization;
var wb = new Workbook();
wb.Settings.Date1904 = false;
wb.Settings.Culture = new CultureInfo("en-US");
wb.Worksheets[0].Cells["A1"].PutValue("Settings configured");
wb.Save("settings.xlsx");
var loaded = new Workbook("settings.xlsx");
Console.WriteLine("Date1904: " + loaded.Settings.Date1904);Trin 4: Indstil dokumentegenskaber
Workbook.DocumentProperties eksponerer Title, Subject, Author, Keywords, Comments, Category, Company og Manager som direkte strengegenskaber.
using Aspose.Cells_FOSS;
var wb = new Workbook();
wb.DocumentProperties.Title = "Quarterly Report";
wb.DocumentProperties.Author = "Reporting Team";
wb.DocumentProperties.Company = "Contoso Ltd";
wb.DocumentProperties.Keywords = "quarterly, sales, 2026";
wb.Save("properties.xlsx");
var loaded = new Workbook("properties.xlsx");
Console.WriteLine("Title: " + loaded.DocumentProperties.Title);
Console.WriteLine("Author: " + loaded.DocumentProperties.Author);Trin 5: Brug SaveOptions
Workbook.Save(path, SaveOptions) accepterer et SaveOptions-objekt for at tilpasse outputtet. Nøgleegenskaber: UseSharedStrings (reducerer filstørrelsen for ark med gentagne strenge), ValidateBeforeSave (kører validering før skrivning), og CompactStyles (fjerner ubrugte stilarter).
using Aspose.Cells_FOSS;
var wb = new Workbook();
var ws = wb.Worksheets[0];
for (var i = 0; i < 50; i++)
ws.Cells[i, 0].PutValue("Repeated text");
var opts = new SaveOptions
{
UseSharedStrings = true,
ValidateBeforeSave = true,
CompactStyles = true,
};
wb.Save("compact.xlsx", opts);
Console.WriteLine("Saved with SaveOptions.");Trin 6: Læs LoadDiagnostics efter reparation
Efter indlæsning med TryRepairPackage = true, tjek Workbook.LoadDiagnostics for at se, om der er foretaget nogen reparationer.
using Aspose.Cells_FOSS;
var opts = new LoadOptions { TryRepairPackage = true, TryRepairXml = true };
var wb = new Workbook("file.xlsx", opts);
var diag = wb.LoadDiagnostics;
Console.WriteLine("HasRepairs: " + diag.HasRepairs);
Console.WriteLine("HasDataLossRisk: " + diag.HasDataLossRisk);
foreach (var entry in diag.Issues)
Console.WriteLine($" [{entry.Severity}] {entry.Code}: {entry.Message}");Almindelige problemer og løsninger
WorkbookSaveException når ValidateBeforeSave = true.
Projektmappen indeholder en strukturel inkonsistens. Deaktiver ValidateBeforeSave midlertidigt for at gemme og inspicere filen, og ret derefter det problematiske indhold.
Dokumentegenskaber er ikke synlige i Excels filinfo-panel.
Sørg for, at du indstiller egenskaber på Workbook.DocumentProperties, ikke på Workbook.Properties. Sidstnævnte indeholder visningsflag, ikke metadata‑strenge.
Date1904 = true forårsager, at datoværdier forskydes.
Date1904 ændrer den epoke, der bruges til datoserienumre. Indstil den kun til true for filer, der stammer fra macOS Excel med det 1904-dato system aktiveret; blanding af systemer forårsager fejl på 1462 dage.
Ofte stillede spørgsmål
Hvad er forskellen mellem WorkbookSettings og WorkbookProperties?
WorkbookSettings (via Workbook.Settings) indeholder konfigurationsværdier som Date1904 og Culture. WorkbookProperties (via Workbook.Properties) indeholder OOXML‑visningsflag såsom ShowObjects. Dokumentmetadata‑strenge (Titel, Forfatter osv.) findes i Workbook.DocumentProperties.
Fjerner CompactStyles nogensinde stilarter, jeg har brug for?
Nej. CompactStyles fjerner kun stilarter, som ikke er refereret af nogen celle eller formateringsregel i projektmappen.
Kan jeg læse LoadDiagnostics, selv når ingen reparation blev forsøgt?
Ja. Den Issues samling vil være tom, og både HasRepairs og HasDataLossRisk vil returnere false.