Altbilgi içeriğine atla
IRONXL KULLANARAK

.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
$vbLabelText   $csharpLabel

Çıktı Excel Dosyası

.NET Core için bir Excel API'si oluşturun: XLSX Dosyaları Oluşturma, Okuma ve Dışa Aktarma: Görüntü 1 - .NET Core API tarafından üretilen 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
$vbLabelText   $csharpLabel

Çıktı

.NET Core için bir Excel API'si oluşturun: XLSX Dosyaları Oluşturma, Okuma ve Dışa Aktarma: Görüntü 2 - Başarıyla içe aktarılan Excel verilerini gösteren çı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
$vbLabelText   $csharpLabel

Ö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 önce workbook.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, AllowEditRange API'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
$vbLabelText   $csharpLabel

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:

Ü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.

Curtis Chau
Teknik Yazar

Curtis Chau, Bilgisayar Bilimleri alanında Lisans Derecesine (Carleton Üniversitesi) sahip ve Node.js, TypeScript, JavaScript ve React konularında uzmanlaşmış ön uç geliştirmeyle ilgileniyor. Sezgisel ve estetik açıdan hoş kullanıcı arayüzleri oluşturma tutkunu, Curtis modern çerçevelerle çalışmayı ve iyi yapı...

Daha Fazla Oku

Iron Destek Ekibi

Haftada 5 gün, 24 saat çevrimiçiyiz.
Sohbet
E-posta
Beni Ara