.NET Core için Excel API'si Oluşturun: XLSX Dosyaları Oluşturun, Okuyun ve Dışa Aktarın
Bir .NET Core için Excel API'si oluşturmak, IronXL ile doğrudan. Paketi yükleyin, bir WorkBook oluşturun, hücreleri doldurun ve akışı doğrudan döndürün -- Microsoft Office gerekmez.
Install-Package IronXL.Excel
IronXL, XLSX oluşturma, veri içe aktarma, çok formatlı dışa aktarma ve hücre stilini tamamen yönetilen .NET kodunda ele alır. Windows, Linux ve macOS'ta çalışır, bu da programlı Excel desteğine ihtiyaç duyan herhangi bir ASP.NET Core API için pratik bir seçim haline getirir.
IronXL'i Bir .NET Core Projesine Nasıl Yüklersiniz?
NuGet Paket Yöneticisi Konsolunu kullanarak, IronXL'i herhangi bir .NET 10 projesine ekleyin:
Install-Package IronXL.Excel
Ya da IronXL aramasını yaparak Visual Studio NuGet UI üzerinden yükleyin. NuGet üzerindeki paket ismi IronXL.Excel.
Kurulumdan sonra, herhangi bir çalışma kitabı oluşturma veya okuma dosyasına using IronXL; ekleyin. Hiçbir Office interop kütüphanesi, COM kaydı ve host cihazda Microsoft Excel yüklemesi gerekmiyor -- IronXL tamamen kendine yeterlidir.
IronXL, .NET Core, .NET 5/6/7/8/9/10 ve .NET Framework projeleri için aynı kütüphaneyi çalıştıran .NET Standard 2.0 ve üstünü hedefler. IronXL belgeleri, tüm desteklenen ortamları ayrıntılı şekilde kapsar.
.NET Core'da Programlı Olarak Excel Dosyaları Nasıl Oluşturulur?
IronXL'in sezgisel API'si ile sıfırdan Excel belgeleri oluşturmak sadece birkaç satır kod gerektirir. Kütüphane, temiz bir nesne modeli aracılığıyla workbook'lar, çalışma sayfaları, hücre stilleri ve formüller üzerinde tam kontrol sağlar.
İşte, biçimlendirilmiş verilerle yeni bir Excel workbook'u oluşturan, çalışma sayfası yönetimini gösteren ve hücre stilleri uygulayan bir denetleyici işlemi:
using IronXL;
using Microsoft.AspNetCore.Mvc;
[ApiController]
[Route("api/[controller]")]
public class ExcelController : ControllerBase
{
[HttpGet("create-report")]
public IActionResult CreateSalesReport()
{
// Create a new Excel workbook in XLSX format
WorkBook workbook = WorkBook.Create(ExcelFileFormat.XLSX);
WorkSheet worksheet = workbook.CreateWorkSheet("Sales Data");
// Set header labels in the first row
worksheet["A1"].Value = "Product";
worksheet["B1"].Value = "Q1 Sales";
worksheet["C1"].Value = "Q2 Sales";
worksheet["D1"].Value = "Total";
// Bold headers and apply a blue background with white text
worksheet["A1:D1"].Style.Font.Bold = true;
worksheet["A1:D1"].Style.SetBackgroundColor("#4472C4");
worksheet["A1:D1"].Style.Font.SetColor("#FFFFFF");
// Add data rows
worksheet["A2"].Value = "Widget Pro";
worksheet["B2"].Value = 15000;
worksheet["C2"].Value = 18500;
worksheet["D2"].Formula = "=B2+C2";
worksheet["A3"].Value = "Gadget Plus";
worksheet["B3"].Value = 22000;
worksheet["C3"].Value = 24000;
worksheet["D3"].Formula = "=B3+C3";
// Apply currency number format to sales columns
worksheet["B2:D3"].Style.Format = "$#,##0";
// Stream the XLSX file back to the caller
var stream = workbook.ToStream();
return File(
stream,
"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",
"SalesReport.xlsx");
}
}
using IronXL;
using Microsoft.AspNetCore.Mvc;
[ApiController]
[Route("api/[controller]")]
public class ExcelController : ControllerBase
{
[HttpGet("create-report")]
public IActionResult CreateSalesReport()
{
// Create a new Excel workbook in XLSX format
WorkBook workbook = WorkBook.Create(ExcelFileFormat.XLSX);
WorkSheet worksheet = workbook.CreateWorkSheet("Sales Data");
// Set header labels in the first row
worksheet["A1"].Value = "Product";
worksheet["B1"].Value = "Q1 Sales";
worksheet["C1"].Value = "Q2 Sales";
worksheet["D1"].Value = "Total";
// Bold headers and apply a blue background with white text
worksheet["A1:D1"].Style.Font.Bold = true;
worksheet["A1:D1"].Style.SetBackgroundColor("#4472C4");
worksheet["A1:D1"].Style.Font.SetColor("#FFFFFF");
// Add data rows
worksheet["A2"].Value = "Widget Pro";
worksheet["B2"].Value = 15000;
worksheet["C2"].Value = 18500;
worksheet["D2"].Formula = "=B2+C2";
worksheet["A3"].Value = "Gadget Plus";
worksheet["B3"].Value = 22000;
worksheet["C3"].Value = 24000;
worksheet["D3"].Formula = "=B3+C3";
// Apply currency number format to sales columns
worksheet["B2:D3"].Style.Format = "$#,##0";
// Stream the XLSX file back to the caller
var stream = workbook.ToStream();
return File(
stream,
"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",
"SalesReport.xlsx");
}
}
Imports IronXL
Imports Microsoft.AspNetCore.Mvc
<ApiController>
<Route("api/[controller]")>
Public Class ExcelController
Inherits ControllerBase
<HttpGet("create-report")>
Public Function CreateSalesReport() As IActionResult
' Create a new Excel workbook in XLSX format
Dim workbook As WorkBook = WorkBook.Create(ExcelFileFormat.XLSX)
Dim worksheet As WorkSheet = workbook.CreateWorkSheet("Sales Data")
' Set header labels in the first row
worksheet("A1").Value = "Product"
worksheet("B1").Value = "Q1 Sales"
worksheet("C1").Value = "Q2 Sales"
worksheet("D1").Value = "Total"
' Bold headers and apply a blue background with white text
worksheet("A1:D1").Style.Font.Bold = True
worksheet("A1:D1").Style.SetBackgroundColor("#4472C4")
worksheet("A1:D1").Style.Font.SetColor("#FFFFFF")
' Add data rows
worksheet("A2").Value = "Widget Pro"
worksheet("B2").Value = 15000
worksheet("C2").Value = 18500
worksheet("D2").Formula = "=B2+C2"
worksheet("A3").Value = "Gadget Plus"
worksheet("B3").Value = 22000
worksheet("C3").Value = 24000
worksheet("D3").Formula = "=B3+C3"
' Apply currency number format to sales columns
worksheet("B2:D3").Style.Format = "$#,##0"
' Stream the XLSX file back to the caller
Dim stream = workbook.ToStream()
Return File(
stream,
"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",
"SalesReport.xlsx")
End Function
End Class
Çıktı Excel Dosyası

WorkBook.Create() hem XLSX hem de XLS formatlarını destekler. CreateWorkSheet() yöntemi, hücreleri değerlerle doldurduğunuz, hesaplamalar için Excel formülleri uyguladığınız ve hücre aralıkları aracılığıyla düzeni kontrol ettiğiniz adlandırılmış bir sayfa ekler. IronXL'in hesaplama motoru, kompleks veri analiz senaryolarında kullanılan dizi formüllerine destek dahil olmak üzere, workbook verileri değiştiğinde formülleri otomatik olarak değerlendirir.
Hücre stilleri kalın ve renkten daha öteye gider. Hücre formatlama API'si sayısal formatlar, kenarlıklar, hizalama, font boyutları ve daha fazlasını ayarlamanıza, tümü COM katmanına dokunmadan olanak tanır. Bu, hiçbir görüntü bağlamının bulunmadığı yerleştirilen Linux ortamlarında çalıştırmak için güvenli hale getirir.
Bir Workbook'a Birden Fazla Çalışma Sayfası Nasıl Eklenir?
Tek bir defter, herhangi sayıda çalışma sayfasını barındırabilir. Gerekli her sekme için workbook.CreateWorkSheet("SheetName") çağırın. Çalışma sayfalarına daha sonra workbook.GetWorkSheet("SheetName") ile isim yoluyla veya workbook.WorkSheets[0] ile indeks yoluyla erişilebilir.
Bu pattern, özet artı detay raporları oluştururken kullanışlıdır: Bir sayfa toplu toplamları tutarken, çocuk sayfalar, ham işlem satırlarını tutar. Çalışma sayfası yönetimi belgeleri çalışma zamanında sayfaların yeniden adlandırılmasını, yeniden sıralanmasını ve kaldırılmasını açıklıyor.
Web API'lerinde Excel Verilerini Okumanın En İyi Yolu Nedir?
Kullanıcıların yüklediği Excel dosyalarından veri almak, elektronik tablo içeriğini işleyen herhangi bir web uygulaması için gereklidir. IronXL, Excel elektronik tablolarını okumayı direkt hale getirir -- bir akıştan yükleyin, satırları bölün ve her hücreden türlendirilmiş değerleri çıkarın.
[HttpPost("import")]
public IActionResult ImportExcelData(IFormFile file)
{
if (file == null || file.Length == 0)
return BadRequest("No file uploaded");
using var stream = file.OpenReadStream();
// Load the workbook directly from the upload stream
WorkBook workbook = WorkBook.Load(stream);
WorkSheet worksheet = workbook.DefaultWorkSheet;
var records = new List<Dictionary<string, object>>();
// Start at row 2 to skip the header row
for (int row = 2; row <= worksheet.RowCount; row++)
{
var record = new Dictionary<string, object>
{
["Product"] = worksheet[$"A{row}"].StringValue,
["Sales"] = worksheet[$"B{row}"].DecimalValue,
["Date"] = worksheet[$"C{row}"].DateTimeValue
};
records.Add(record);
}
return Ok(new {
message = "Import successful",
recordCount = records.Count,
data = records
});
}
[HttpPost("import")]
public IActionResult ImportExcelData(IFormFile file)
{
if (file == null || file.Length == 0)
return BadRequest("No file uploaded");
using var stream = file.OpenReadStream();
// Load the workbook directly from the upload stream
WorkBook workbook = WorkBook.Load(stream);
WorkSheet worksheet = workbook.DefaultWorkSheet;
var records = new List<Dictionary<string, object>>();
// Start at row 2 to skip the header row
for (int row = 2; row <= worksheet.RowCount; row++)
{
var record = new Dictionary<string, object>
{
["Product"] = worksheet[$"A{row}"].StringValue,
["Sales"] = worksheet[$"B{row}"].DecimalValue,
["Date"] = worksheet[$"C{row}"].DateTimeValue
};
records.Add(record);
}
return Ok(new {
message = "Import successful",
recordCount = records.Count,
data = records
});
}
Imports Microsoft.AspNetCore.Mvc
Imports System.Collections.Generic
Imports IronXL
<HttpPost("import")>
Public Function ImportExcelData(file As IFormFile) As IActionResult
If file Is Nothing OrElse file.Length = 0 Then
Return BadRequest("No file uploaded")
End If
Using stream = file.OpenReadStream()
' Load the workbook directly from the upload stream
Dim workbook As WorkBook = WorkBook.Load(stream)
Dim worksheet As WorkSheet = workbook.DefaultWorkSheet
Dim records As New List(Of Dictionary(Of String, Object))()
' Start at row 2 to skip the header row
For row As Integer = 2 To worksheet.RowCount
Dim record As New Dictionary(Of String, Object) From {
{"Product", worksheet($"A{row}").StringValue},
{"Sales", worksheet($"B{row}").DecimalValue},
{"Date", worksheet($"C{row}").DateTimeValue}
}
records.Add(record)
Next
Return Ok(New With {
.message = "Import successful",
.recordCount = records.Count,
.data = records
})
End Using
End Function
Çıktı

WorkBook.Load() akışlardan, dosya yollarından veya bayt dizilerinden Excel dosyalarını açar. Hücrelere worksheet["A1"] indeksi sözdizimi ile veya adlandırılmış bir hücre aralığını yineleyerek erişilir. IronXL, veri doğrulamasını otomatik olarak yönetir ve tür güvenli erişiciler sağlar -- IntValue, DecimalValue, DateTimeValue, StringValue -- böylece kullanan kod temiz ve tahmin edilebilir kalır.
İçe Aktarılan Verileri Nasıl Filtreler ve Sıralarsınız?
Bir çalışma kitabını yükledikten sonra, satırları sıralamak için herhangi bir Range objesinde .SortAscending() veya .SortDescending() çağırın. Filtreleme için, hücrelerin iterasyonu yapın ve koşulları satır içinde değerlendirin veya verileri daha fazla işlemek için bir LINQ koleksiyonuna aktarın. Sıralama ve filtreleme kılavuzu her iki yaklaşımı da pratik örneklerle gösterir.
Büyük yüklemelerle mi çalışıyorsunuz? IronXL, yalnızca erişilen hücreleri okur, bu yüzden belirli bir sütunu sorgulamadan önce birkaç megabyttan fazla bir dosyayı belleğe yüklemeye gerek yoktur. Bu tembel erişim yaklaşımı, yükleme sırasında on binlerce satırı içeren workbook'larla çalışırken bellek tüketimini stabil tutar.
Excel Verilerini Farklı Formatlara Nasıl Dışa Aktarabilirsiniz?
Uygulamalar genellikle çoklu çıktı formatlarında elektronik tablolar sunmalıdır. IronXL, dışa aktarma için XLSX, XLS, CSV, JSON ve HTML'yi tek bir yöntem çağrısında destekler, harici dönüştürme araçları gerekmez.
[HttpGet("export/{format}")]
public IActionResult ExportData(string format)
{
// Load a pre-designed template workbook
WorkBook workbook = WorkBook.Load("template.xlsx");
return format.ToLower() switch
{
"xlsx" => File(
workbook.ToStream(),
"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",
"export.xlsx"),
"csv" => File(
workbook.ToStream(FileFormat.CSV),
"text/csv",
"export.csv"),
"json" => Ok(workbook.ToJson()),
_ => BadRequest("Unsupported format")
};
}
[HttpGet("export/{format}")]
public IActionResult ExportData(string format)
{
// Load a pre-designed template workbook
WorkBook workbook = WorkBook.Load("template.xlsx");
return format.ToLower() switch
{
"xlsx" => File(
workbook.ToStream(),
"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",
"export.xlsx"),
"csv" => File(
workbook.ToStream(FileFormat.CSV),
"text/csv",
"export.csv"),
"json" => Ok(workbook.ToJson()),
_ => BadRequest("Unsupported format")
};
}
Imports Microsoft.AspNetCore.Mvc
<HttpGet("export/{format}")>
Public Function ExportData(format As String) As IActionResult
' Load a pre-designed template workbook
Dim workbook As WorkBook = WorkBook.Load("template.xlsx")
Select Case format.ToLower()
Case "xlsx"
Return File(workbook.ToStream(), "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", "export.xlsx")
Case "csv"
Return File(workbook.ToStream(FileFormat.CSV), "text/csv", "export.csv")
Case "json"
Return Ok(workbook.ToJson())
Case Else
Return BadRequest("Unsupported format")
End Select
End Function
Önceden tanımlanmış düzenlere sahip Excel şablonları kullanmak, rapor oluşturmayı hızlandırır. Ön tasarlanmış bir workbook'u yükleyin, adlandırılmış hücrelere veya aralıklara dinamik veriler yerleştirin, sonra sonucu iletin. Bu yaklaşım, satış raporları, faturalar ve uyumluluk belgelerinde tutarlılık konusunda esnekliğin daha önemli olduğu yerlerde uygun.
IronXL'in çapraz platform desteği nedeniyle, bu dosya işlemleri Windows, Linux ve macOS'ta aynen çalışır, bu da onu .NET Core kapsayıcı dağıtımları için uygun hale getirir. IronXL çapraz platform kılavuzunu okuyarak daha fazla bilgi edinin.
.NET Core API'sinden CSV'ye Nasıl Dışa Aktarılır?
Yukarıda gösterildiği gibi, içerik türü text/csv ile workbook.ToStream(FileFormat.CSV) çağırın ve döndürün. Çok sayfalı çalışma kitapları için, her bir sayfa workbook.WorkSheets[index] ile erişilerek ve yaprak objesinde .ToStream(FileFormat.CSV) çağrılarak bağımsız olarak dışa aktarılabilir. CSV dışa aktarma dökümantasyonu sınırlayıcıların, kodlamaların ve tarih formatı seçeneklerinin nasıl ele alındığını kapsar.
Koşullu Biçimlendirme ve Veri Çubuklarını Nasıl Uygularsınız?
Temel hücre stillerinin ötesinde, IronXL, koşullu biçimlendirme kurallarını destekler -- bir eşiğin üzerindeki hücreleri yeşil renkle, negatifleri kırmızı renkte işaretler veya eğilimleri elektronik tabloda ayrı bir araçta pas-sonrası işlem olmadan anında görünür kılmak için gradyan veri çubukları uygular.
Koşullu biçimlendirme, okuyucuların anında aykırı değerleri görmesi gerektiği finansal panolar ve KPI raporlarında özellikle değerlidir. Alıcının indirildikten sonra kendi biçimlendirmesini uygulamalarına güvenmek yerine, kurallar XLSX dosyasında yerleşik olarak seyahat eder ve herhangi bir Microsoft Excel veya uyumlu görüntüleyicide dosya açıldığında otomatik olarak değerlendirilir.
Koşullu biçimlendirme, çalışma sayfasının ConditionalFormatting özelliği aracılığıyla ayarlanır. Kurallar bir adlandırılmış hücre aralığına uygulanır ve çoklu koşul türlerini destekler: hücre değeri karşılaştırmaları, formül tabanlı kurallar, düşükten yükseğe değerlere derece veren renk ölçekleri ve hücre içi çubuk grafikler gibi işlev gören veri çubuğu örtüşmeleri. Open XML spesifikasyonu, IronXL'in XLSX dosyasına yazdığı altında yatan kural yapısını tanımlar.
Renk ölçekleri, simge setleri ve veri çubukları uygulama üzerine daha fazla bilgi için IronXL dökümantasyonundaki koşullu biçimlendirme kılavuzuna bakın.
Excel Dosyaları ve Çalışma Sayfaları Nasıl Korunur?
Hassas veriler içeren raporların dağıtımı, bir erişim kontrol katmanı gerektirir. IronXL, defter seviyesi parola koruması ve çalışma sayfası seviyesi koruma sağlar:
- Çalışma kitabı parolası: XLSX dosyasını şifrelemek için
.SaveAs()çağrılmadan önceworkbook.Password = "secret"ayarlayın. Alıcılar, dosyayı Excel'de açmak için parolayı girmelidir. - Çalışma sayfası koruması: Hücre düzenlemeyi kilitlemek için
worksheet.ProtectSheet("password")çağrın, buna rağmen sayfa görüntülenebilir kalsın. Belirli aralıklar,AllowEditRangeAPI'si kullanılarak veri girişi için kilidi açılabilir. - Sadece okunur dağıtım: Asla düzenlenmemesi gereken belgeler için, çalışma sayfası korumasını dosya seviyesinde şifreleme ile birleştirin.
Parolayla korunan XLSX dosyaları varsayılan olarak AES-128 şifrelemesini kullanır, bu aynı zamanda yerel Excel'in uyguladığı standarttır. Bu, IronXL aracılığıyla korunan bir dosyanın, Excel'in yerleşik açık dosya istemi ile tam uyumlu olduğu anlamına gelir -- alıcının ucunda özel görüntüleyici gerekmez.
Bu güvenlik özellikleri, standart .NET Core güvenlik modelini tamamlar ve özellikle finans veya İK raporlama uç noktaları oluştururken kullanışlıdır. Tam API referansı için dosya koruma dökümantasyonu sağlanmaktadır.
.NET'te Excel Formülleri ile Nasıl Çalışılır?
IronXL'nin yerleşik hesaplama motoru, standart Excel formüllerini çalışma zamanında değerlendirir, böylece API, diske kaydetmeden ve Excel'de yeniden açmadan hesaplanan değerleri döndürebilir. Herhangi bir hücrenin .Formula özelliğine bir formül dizesi atayın.
// Sum a column and place the result in a footer row
worksheet[$"B{lastRow}"].Formula = $"=SUM(B2:B{lastRow - 1})";
// Calculate an average across a range
worksheet[$"C{lastRow}"].Formula = $"=AVERAGE(C2:C{lastRow - 1})";
// Retrieve the computed value immediately
decimal total = worksheet[$"B{lastRow}"].DecimalValue;
// Sum a column and place the result in a footer row
worksheet[$"B{lastRow}"].Formula = $"=SUM(B2:B{lastRow - 1})";
// Calculate an average across a range
worksheet[$"C{lastRow}"].Formula = $"=AVERAGE(C2:C{lastRow - 1})";
// Retrieve the computed value immediately
decimal total = worksheet[$"B{lastRow}"].DecimalValue;
' Sum a column and place the result in a footer row
worksheet($"B{lastRow}").Formula = $"=SUM(B2:B{lastRow - 1})"
' Calculate an average across a range
worksheet($"C{lastRow}").Formula = $"=AVERAGE(C2:C{lastRow - 1})"
' Retrieve the computed value immediately
Dim total As Decimal = worksheet($"B{lastRow}").DecimalValue
IronXL, matematiksel, istatistiksel, metin, tarih ve arama kategorileri dahil olmak üzere çoğu standart Excel fonksiyonunu destekler. İleri düzey senaryolar için dizi formülleri (Ctrl+Shift+Enter söz dizimi) de desteklenir. Çünkü formül değerlendirmesi .NET işlemi içinde gerçekleşir, harici bir hesaplama hizmetine round-trip yok -- sonuçlar formül atandığında hemen mevcuttur, bu da API yanıt sürelerini tahmin edilebilir kılar, binlerce satır üzerinden hesaplama yaparken bile. Formül desteği referansı, desteklenen tüm fonksiyonları listeler.
Sonraki Adımlarınız Neler?
IronXL ile bir Excel API'si oluşturmak, .NET Core uygulamalarına elektronik tablolarla çalışmak için sağlam yetenekler sağlar. Biçimlendirilmiş verileri ve hesaplanan formülleri içeren XLSX dosyaları oluşturmaktan kullanıcı yüklemelerini içe aktarmaya ve verileri birden çok formatta dışa aktarmaya kadar, IronXL tüm programlı elektronik tablo işlemlerini platformlar arası, Office'siz bir şekilde yönetir.
Daha fazla ileri gitmek için şu kaynakları inceleyin:
- IronXL ürün sayfası -- özellik genel bakışı ve başlangıç kılavuzu
- IronXL belgeleri -- tam API referansı ve nasıl yapılır makaleleri
- C#'da Excel dosyaları oluşturun -- çalışma kitabı ve sayfa oluşturma üzerine detaylı kılavuz
- Excel dosyalarını C#'da okuyun -- yükleme, ayrıştırma ve veri çıkarma
- Excel'i CSV'ye Aktarın -- kodlama ve sınırlayıcı seçenekleriyle CSV dışa aktarma
- Hücre biçimlendirme API'si -- yazı tipleri, renkler, kenarlıklar ve sayı formatları
- Koşullu biçimlendirme -- kurallar, veri çubukları, renk ölçekleri
- Formül desteği -- desteklenen Excel fonksiyonlar referansı
- Dosya koruma -- çalışma kitabı ve sayfa şifre API'leri
- NuGet paketi -- mevcut sürüm ve sürüm geçmişi
Ücretsiz deneme başlatın ve IronXL'yi canlı bir projede test edin veya lisans seçeneklerini inceleyerek üretim dağıtımı için doğru planı bulun.
Sıkça Sorulan Sorular
IronXL nedir?
IronXL, geliştiricilerin Microsoft Office veya COM birlikte çalışmasına ihtiyaç duymadan C# ile Excel dosyalarını programatik olarak oluşturmasına, okumasına ve dışa aktarmasına olanak tanıyan bir .NET Excel kütüphanesidir.
Office olmadan .NET Core'da bir Excel dosyası nasıl oluşturulur?
Yeni bir workbook oluşturmak için WorkBook.Create(ExcelFileFormat.XLSX) çağırın, CreateWorkSheet() ile sayfalar ekleyin, worksheet['A1'].Value sözdizimi ile hücreler doldurun ve sonucu workbook.ToStream() ile stream yapın.
ASP.NET Core'da yüklenmiş bir Excel dosyasını nasıl okursunuz?
IFormFile stream'i WorkBook.Load(stream)'e geçirin, DefaultWorkSheet'e erişin ve worksheet.RowCount kullanarak satırları yineleyin. DecimalValue ve DateTimeValue gibi tiplenmiş erişim yöntemleri, her hücreden güçlü bir şekilde tiplenmiş veri çıkarır.
IronXL, Excel verilerini CSV veya JSON'a aktarabilir mi?
Evet. CSV çıktısı için workbook.ToStream(FileFormat.CSV) veya workbook verisinin JSON temsili için workbook.ToJson() çağırın.
IronXL, Linux ve macOS'ta çalışıyor mu?
Evet. IronXL, .NET Standard 2.0 ve üzerini hedefler ve Windows, Linux ve macOS'ta herhangi bir Microsoft Office kurulumu veya COM katmanı olmadan çalışır.
IronXL ile Excel dosyasını nasıl parolayla korursunuz?
workbook.Password'ı bir dizeye ayarlayın ve SaveAs() çağırmadan önce. Çalışma sayfası düzeyinde koruma için, hücre düzenlemeyi önlemek ama sayfanın okunmasını sağlamak için worksheet.ProtectSheet('password') çağırın.




