Altbilgi içeriğine atla
IRONXL KULLANARAK

IronXL Kullanarak C# .NET Core'a Excel Elektronik Tablolar Nasıl Oluşturulur

ASP.NET Core'da programatik olarak Excel elektronik tabloları oluşturmak, finansal raporlama ve envanter takibinden veri dışa aktarma ve otomatik panellere kadar güçlü otomasyon olanakları sunar. Web uygulama geliştirmede, .NET Core Excel elektronik tablo oluşturma entegrasyonu veri erişimini ve raporlamayı geliştirir, kullanıcıların karmaşık veri kümeleriyle etkileşimde bulunmasına ve değerli içgörüler elde etmesine olanak tanır. IronXL for .NET ile, geliştiriciler Microsoft Office'i yüklemeden veya Office Interop'a güvenmeden Excel dosyaları oluşturabilirler. Bu platformlar arası kütüphane, Windows, Linux ve macOS üzerinde çalışır ve modern veri odaklı uygulamaların Azure veya Docker konteynerlarına dağıtımı için idealdir.

Bu öğretici, profesyonel biçimlendirme, formüller ve birden fazla dışa aktarma seçeneği ile .NET Core Excel elektronik tablolarının oluşturulmasını adım adım anlatır. ASP.NET Core web uygulamaları, konsol uygulamaları veya arka plan hizmetleri geliştiriyor olun, bu teknikler tüm .NET 10 uygulamalarında geçerlidir. Sonunda, Visual Studio veya herhangi bir .NET geliştirme ortamındaki mevcut projelerle entegre olan, üretime hazır Excel dosyaları üreten çalışma koduna sahip olacaksınız.


IronXL'i Bir .NET Core Projesine Nasıl Yüklersiniz?

Elektronik tablolar oluşturmeden önce projenize IronXL eklemeniz gerekiyor. Visual Studio'da NuGet Paket Yöneticisi Konsolunu açın ve bu komutlardan birini çalıştırın:

Install-Package IronXL.Excel

İlk komut, Visual Studio Paket Yöneticisi Konsolunda çalışır. İkinci yöntem, .NET CLI kullanarak herhangi bir terminalde çalışır. Her ikisi de aynı NuGet paketini kurar ve IronXL'i proje referanslarınıza otomatik olarak ekler.

Kurulum tamamlandıktan sonra, IronXL bir tek using yönergesi ile kullanıma hazırdır. Kütüphane, herhangi bir ek yapılandırma, çalışma zamanı bağımlılığı veya Microsoft Office kurulumu gerektirmez. .NET 10'un çalıştığı her platformda çalışır -- Windows, Linux, macOS veya herhangi bir bulut ortamında.

Ayrıntılı kurulum seçenekleri, manuel DLL indirme dahil, için IronXL kurulum kılavuzu'na bakın. Linux geliştiricileri, platforma özgü rehberlik için Linux dağıtım belgelerini de incelemelidir.

.NET Core Excel Elektronik Tablosu: IronXL for .NET Kullanarak C# ile Profesyonel Excel Çalışma Sayfası Dosyaları Oluşturun: Görsel 1 - Kurulum


Office Bağımlılıkları Olmadan Excel Elektronik Tablosu Nasıl Oluşturulur?

Geleneksel Microsoft Excel otomasyonu, MS Office kurulumunu gerektirir ve Linux ya da konteynerleşmiş ortamlarda çalışmayan Office Interop kullanır. Microsoft'un Office Interop konusundaki belgelerinde tartışıldığı gibi, Office Interop dağıtım karmaşıklığı ve lisanslama endişeleri getirir. IronXL for .NET, modern tablo yetenekleri için tam destekle Excel dosyalarını yerel olarak işleyen saf bir .NET çözümü sunarak bu sınırlamaları ortadan kaldırır.

Kütüphane, .NET 8, .NET 9 ve .NET 10'u, ayrıca daha eski .NET Core sürümlerini destekler. XLSX, XLS, CSV ve diğer hesap tablosu formatlarını harici bağımlılıklar olmadan işler. Bu, özellikle sunucu tarafı uygulamaları, mikro servisler ve Microsoft Office'in kurulmasının pratik olmadığı senaryolar açısından özellikle değerlidir. NuGet üzerinden kolay entegrasyon, birkaç dakika içinde Excel dosyaları yazmaya başlamanızı sağlar:

using IronXL;

// Create a new workbook in XLSX format
WorkBook workbook = WorkBook.Create(ExcelFileFormat.XLSX);
// Add an Excel worksheet with a custom name
WorkSheet sheet = workbook.CreateWorkSheet("SalesReport");
// Set a cell value
sheet["A1"].Value = "Product Sales Summary";
// Save the generated Excel file
workbook.SaveAs("SalesReport.xlsx");
using IronXL;

// Create a new workbook in XLSX format
WorkBook workbook = WorkBook.Create(ExcelFileFormat.XLSX);
// Add an Excel worksheet with a custom name
WorkSheet sheet = workbook.CreateWorkSheet("SalesReport");
// Set a cell value
sheet["A1"].Value = "Product Sales Summary";
// Save the generated Excel file
workbook.SaveAs("SalesReport.xlsx");
Imports IronXL

' Create a new workbook in XLSX format
Dim workbook As WorkBook = WorkBook.Create(ExcelFileFormat.XLSX)
' Add an Excel worksheet with a custom name
Dim sheet As WorkSheet = workbook.CreateWorkSheet("SalesReport")
' Set a cell value
sheet("A1").Value = "Product Sales Summary"
' Save the generated Excel file
workbook.SaveAs("SalesReport.xlsx")
$vbLabelText   $csharpLabel

WorkBook.Create() metodu, bir Excel çalışma kitabını başlatır ve XLSX (Excel 2007'de tanıtılan modern XML tabanlı format) veya XLS (eski ikili format) belirtmek için bir ExcelFileFormat parametresini kabul eder. XLSX, daha küçük dosya boyutları ve modern araçlarla daha iyi uyumluluk nedeniyle çoğu senaryo için önerilir. CreateWorkSheet() metodu, Excel verilerinin bulunduğu adlandırılmış çalışma sayfaları ekler -- her çalışma kitabı, ilişkili verileri düzenlemek için birden fazla bireysel sayfa içerebilir.

Hücre değerleri, Excel'in adresleme sistemini yansıtan köşeli ayraç notasyonu kullanılarak ayarlanır -- sheet["A1"] doğrudan A1 hücresini hedefler. Bu sözdizimi, belirli hücreleri ve aralıkları destekler, böylece toplu işlemler herhangi bir elektronik tablo projesi için kolaylaşır.

Çıktı

.NET Core Excel Elektronik Tablosu: IronXL for .NET Kullanarak C# ile Profesyonel Excel Çalışma Sayfası Dosyaları Oluşturun: Görsel 2 - Excel Çıktısı


Çalışma Sayfalarını Programatik Olarak Nasıl Eklersiniz ve Veriyi Nasıl Doldurursunuz?

Gerçek dünyadaki Excel elektronik tabloları, birden fazla çalışma sayfasında yapılandırılmış veriler içerir. IronXL, bilgi düzenleme ve hücreleri verimli bir şekilde doldurma için esnek yöntemler sunar; ister manuel veri girişi, ister veri odaklı uygulamalarda otomatik veri hatlarıyla çalışıyor olun.

using IronXL;

WorkBook workbook = WorkBook.Create(ExcelFileFormat.XLSX);
WorkSheet sheet = workbook.CreateWorkSheet("MonthlySales");

// Set column names as headers
sheet["A1"].Value = "Month";
sheet["B1"].Value = "Revenue";
sheet["C1"].Value = "Units Sold";

// Populate Excel data using a loop (mock sales data)
string[] months = { "January", "February", "March", "April", "May", "June" };
decimal[] revenue = { 45000.50m, 52000.75m, 48500.25m, 61000.00m, 58750.50m, 67200.25m };
int[] units = { 150, 175, 160, 200, 190, 220 };

for (int i = 0; i < months.Length; i++)
{
    int row = i + 2;
    sheet[$"A{row}"].Value = months[i];
    sheet[$"B{row}"].Value = revenue[i];
    sheet[$"C{row}"].Value = units[i];
}

// Set a range of cells to the same value across columns
sheet["D2:D7"].Value = "Active";
workbook.SaveAs("MonthlySales.xlsx");
using IronXL;

WorkBook workbook = WorkBook.Create(ExcelFileFormat.XLSX);
WorkSheet sheet = workbook.CreateWorkSheet("MonthlySales");

// Set column names as headers
sheet["A1"].Value = "Month";
sheet["B1"].Value = "Revenue";
sheet["C1"].Value = "Units Sold";

// Populate Excel data using a loop (mock sales data)
string[] months = { "January", "February", "March", "April", "May", "June" };
decimal[] revenue = { 45000.50m, 52000.75m, 48500.25m, 61000.00m, 58750.50m, 67200.25m };
int[] units = { 150, 175, 160, 200, 190, 220 };

for (int i = 0; i < months.Length; i++)
{
    int row = i + 2;
    sheet[$"A{row}"].Value = months[i];
    sheet[$"B{row}"].Value = revenue[i];
    sheet[$"C{row}"].Value = units[i];
}

// Set a range of cells to the same value across columns
sheet["D2:D7"].Value = "Active";
workbook.SaveAs("MonthlySales.xlsx");
Imports IronXL

Dim workbook As WorkBook = WorkBook.Create(ExcelFileFormat.XLSX)
Dim sheet As WorkSheet = workbook.CreateWorkSheet("MonthlySales")

' Set column names as headers
sheet("A1").Value = "Month"
sheet("B1").Value = "Revenue"
sheet("C1").Value = "Units Sold"

' Populate Excel data using a loop (mock sales data)
Dim months As String() = {"January", "February", "March", "April", "May", "June"}
Dim revenue As Decimal() = {45000.5D, 52000.75D, 48500.25D, 61000.0D, 58750.5D, 67200.25D}
Dim units As Integer() = {150, 175, 160, 200, 190, 220}

For i As Integer = 0 To months.Length - 1
    Dim row As Integer = i + 2
    sheet($"A{row}").Value = months(i)
    sheet($"B{row}").Value = revenue(i)
    sheet($"C{row}").Value = units(i)
Next

' Set a range of cells to the same value across columns
sheet("D2:D7").Value = "Active"
workbook.SaveAs("MonthlySales.xlsx")
$vbLabelText   $csharpLabel

Dize enterpolasyonu ($"A{row}") döngüler içinde dinamik hücre adreslemesine olanak tanır, bu da herhangi bir veri kaynağından satırları programatik olarak doldurmayı kolaylaştırır. sheet["D2:D7"] aralık sözdizimi, birden çok hücreye aynı anda değer atar -- durum sütunları, varsayılan değerler veya veri bölgelerini başlatma için kullanışlıdır. IronXL, veri tipi dönüşümünü otomatik olarak yönetir; ondalıkları sayısal değerler olarak ve metin içeriğini metin olarak depolar, bu sırada oluşturulan dosya için uygun Excel veri tiplerini korur.

Birden Fazla Çalışma Sayfasıyla Çalışmak

Birden çok çalışma sayfası oluşturmak, ilgili Excel verilerini tek bir çalışma kitabı içinde mantıksal olarak düzenler:

WorkSheet summarySheet = workbook.CreateWorkSheet("Summary");
WorkSheet detailSheet = workbook.CreateWorkSheet("Details");
WorkSheet archiveSheet = workbook.CreateWorkSheet("Archive");
WorkSheet summarySheet = workbook.CreateWorkSheet("Summary");
WorkSheet detailSheet = workbook.CreateWorkSheet("Details");
WorkSheet archiveSheet = workbook.CreateWorkSheet("Archive");
Dim summarySheet As WorkSheet = workbook.CreateWorkSheet("Summary")
Dim detailSheet As WorkSheet = workbook.CreateWorkSheet("Details")
Dim archiveSheet As WorkSheet = workbook.CreateWorkSheet("Archive")
$vbLabelText   $csharpLabel

Veritabanı entegrasyonu gerektiren uygulamalar için, IronXL; Entity Framework Core, Dapper veya ham ADO.NET ile çalışır. DataTable nesnelerindeki veriler doğrudan çalışma sayfalarına aktarılabilir, bu da raporlama iş akışlarını basitleştirir ve kullanıcıların verileri sistemler arasında paylaşmasına olanak tanır.

Dökümantasyonda çalışma sayfalarını yönetme ve Excel dosyaları yazma hakkında daha fazla bilgi edinin. Mevcut bir Excel dosyasını okumak için, Excel dosyası yükleme eğitimine bakın.

Çıktı

.NET Core Excel Elektronik Tablosu: IronXL Kullanarak C# ile Profesyonel Excel Çalışma Sayfası Dosyaları Oluşturun: Görsel 3 - Birden Fazla Çalışma Sayfası Çıkışı


Profesyonel Biçimlendirme ve Stil Nasıl Uygulanır?

Ham veriler, doğru biçimlendirildiğinde anlamlı hale gelir. IronXL, arka plan renkleri, yazı tipleri, kenarlıklar ve sayı formatlarını destekler - Excel tablolarını yönetici sunumları veya müşteri teslimatları için uygun hale getiren önemli biçimlendirme yetenekleri sunar.

using IronXL;

WorkBook workbook = WorkBook.Create(ExcelFileFormat.XLSX);
WorkSheet sheet = workbook.CreateWorkSheet("FormattedReport");

// Create headers with styling
sheet["A1"].Value = "Category";
sheet["B1"].Value = "Amount";
sheet["C1"].Value = "Date";

// Apply header formatting to the Excel sheet
sheet["A1:C1"].Style.SetBackgroundColor("#2E86AB");
sheet["A1:C1"].Style.Font.Bold = true;
sheet["A1:C1"].Style.Font.SetColor("#FFFFFF");

// Add sample data to specific cells
sheet["A2"].Value = "Software License";
sheet["B2"].Value = 1299.99m;
sheet["C2"].Value = DateTime.Now;

// Format currency and date columns
sheet["B2"].FormatString = "$#,##0.00";
sheet["C2"].FormatString = "yyyy-MM-dd";

// Add borders around the data range
var dataRange = sheet["A1:C2"];
dataRange.Style.BottomBorder.SetColor("#000000");
dataRange.Style.BottomBorder.Type = IronXL.Styles.BorderType.Thin;
workbook.SaveAs("FormattedReport.xlsx");
using IronXL;

WorkBook workbook = WorkBook.Create(ExcelFileFormat.XLSX);
WorkSheet sheet = workbook.CreateWorkSheet("FormattedReport");

// Create headers with styling
sheet["A1"].Value = "Category";
sheet["B1"].Value = "Amount";
sheet["C1"].Value = "Date";

// Apply header formatting to the Excel sheet
sheet["A1:C1"].Style.SetBackgroundColor("#2E86AB");
sheet["A1:C1"].Style.Font.Bold = true;
sheet["A1:C1"].Style.Font.SetColor("#FFFFFF");

// Add sample data to specific cells
sheet["A2"].Value = "Software License";
sheet["B2"].Value = 1299.99m;
sheet["C2"].Value = DateTime.Now;

// Format currency and date columns
sheet["B2"].FormatString = "$#,##0.00";
sheet["C2"].FormatString = "yyyy-MM-dd";

// Add borders around the data range
var dataRange = sheet["A1:C2"];
dataRange.Style.BottomBorder.SetColor("#000000");
dataRange.Style.BottomBorder.Type = IronXL.Styles.BorderType.Thin;
workbook.SaveAs("FormattedReport.xlsx");
Imports IronXL

Dim workbook As WorkBook = WorkBook.Create(ExcelFileFormat.XLSX)
Dim sheet As WorkSheet = workbook.CreateWorkSheet("FormattedReport")

' Create headers with styling
sheet("A1").Value = "Category"
sheet("B1").Value = "Amount"
sheet("C1").Value = "Date"

' Apply header formatting to the Excel sheet
sheet("A1:C1").Style.SetBackgroundColor("#2E86AB")
sheet("A1:C1").Style.Font.Bold = True
sheet("A1:C1").Style.Font.SetColor("#FFFFFF")

' Add sample data to specific cells
sheet("A2").Value = "Software License"
sheet("B2").Value = 1299.99D
sheet("C2").Value = DateTime.Now

' Format currency and date columns
sheet("B2").FormatString = "$#,##0.00"
sheet("C2").FormatString = "yyyy-MM-dd"

' Add borders around the data range
Dim dataRange = sheet("A1:C2")
dataRange.Style.BottomBorder.SetColor("#000000")
dataRange.Style.BottomBorder.Type = IronXL.Styles.BorderType.Thin
workbook.SaveAs("FormattedReport.xlsx")
$vbLabelText   $csharpLabel

Style özelliği, Microsoft Excel'in yeteneklerine eşleşen biçimlendirme seçeneklerini ortaya çıkarır. Arka plan renkleri, (# önekiyle veya öneksiz) hex kodları kabul ederken, FormatString, Excel'in özel biçimlendirme sözdizimi ile özdeş numara formatlarını uygular -- aynı desenler her iki ortamda da çalışır. Kenarlık stillendirmesi, İnce, Orta, Kalın ve Çift tiplerini destekler, Excel çalışma sayfanızdaki hücre sınırları üzerinde hassas kontrol sağlar.

Gelişmiş Biçimlendirme Teknikleri

Kapsamlı veri içeren Excel elektronik tabloları için, CreateFreezePane(0, 1), kaydırma sırasında başlıkları görünür tutar -- büyük veri setleri için kullanılabilirliği önemli ölçüde artıran gizli bir geliştirmedir. Yönlendirme, kenar boşlukları ve ölçeklendirme için sheet.PrintSetup yoluyla yazdırma yapılandırması fiziksel çıktı için ele alır.

Ek stil seçeneklerini hücre biçimlendirme kılavuzu ve kenar ayarları eğitiminde keşfedin. Bu araçlar, hücre görünümünün her yönü üzerinde size tam kontrol sağlar.


Otomatik Hesaplamalar için Excel Formüllerini Nasıl Kullanırsınız?

Excel'in hesaplama motoru veri analizini otomatikleştirir ve IronXL, formüller için tam destek sağlar. Formülleri standart Excel söz dizimi kullanarak string olarak ayarlayın ve IronXL, talep edildiğinde sonuçları otomatik olarak hesaplar -- raporlama ve finansal analiz için gereklidir.

using IronXL;

WorkBook workbook = WorkBook.Create(ExcelFileFormat.XLSX);
WorkSheet sheet = workbook.CreateWorkSheet("BudgetCalculations");

// Add expense data to the Excel workbook
sheet["A1"].Value = "Expense";
sheet["B1"].Value = "Amount";
sheet["A2"].Value = "Rent";
sheet["B2"].Value = 2500;
sheet["A3"].Value = "Utilities";
sheet["B3"].Value = 350;
sheet["A4"].Value = "Supplies";
sheet["B4"].Value = 875;
sheet["A5"].Value = "Marketing";
sheet["B5"].Value = 1200;

// Add formulas for calculations
sheet["A7"].Value = "Total:";
sheet["B7"].Formula = "=SUM(B2:B5)";
sheet["A8"].Value = "Average:";
sheet["B8"].Formula = "=AVERAGE(B2:B5)";
sheet["A9"].Value = "Maximum:";
sheet["B9"].Formula = "=MAX(B2:B5)";
sheet["A10"].Value = "Count:";
sheet["B10"].Formula = "=COUNT(B2:B5)";

// Calculate all formulas
workbook.EvaluateAll();

// Access calculated values programmatically
decimal total = sheet["B7"].DecimalValue;
Console.WriteLine($"Calculated total: {total}");
workbook.SaveAs("BudgetCalculations.xlsx");
using IronXL;

WorkBook workbook = WorkBook.Create(ExcelFileFormat.XLSX);
WorkSheet sheet = workbook.CreateWorkSheet("BudgetCalculations");

// Add expense data to the Excel workbook
sheet["A1"].Value = "Expense";
sheet["B1"].Value = "Amount";
sheet["A2"].Value = "Rent";
sheet["B2"].Value = 2500;
sheet["A3"].Value = "Utilities";
sheet["B3"].Value = 350;
sheet["A4"].Value = "Supplies";
sheet["B4"].Value = 875;
sheet["A5"].Value = "Marketing";
sheet["B5"].Value = 1200;

// Add formulas for calculations
sheet["A7"].Value = "Total:";
sheet["B7"].Formula = "=SUM(B2:B5)";
sheet["A8"].Value = "Average:";
sheet["B8"].Formula = "=AVERAGE(B2:B5)";
sheet["A9"].Value = "Maximum:";
sheet["B9"].Formula = "=MAX(B2:B5)";
sheet["A10"].Value = "Count:";
sheet["B10"].Formula = "=COUNT(B2:B5)";

// Calculate all formulas
workbook.EvaluateAll();

// Access calculated values programmatically
decimal total = sheet["B7"].DecimalValue;
Console.WriteLine($"Calculated total: {total}");
workbook.SaveAs("BudgetCalculations.xlsx");
Imports IronXL

Dim workbook As WorkBook = WorkBook.Create(ExcelFileFormat.XLSX)
Dim sheet As WorkSheet = workbook.CreateWorkSheet("BudgetCalculations")

' Add expense data to the Excel workbook
sheet("A1").Value = "Expense"
sheet("B1").Value = "Amount"
sheet("A2").Value = "Rent"
sheet("B2").Value = 2500
sheet("A3").Value = "Utilities"
sheet("B3").Value = 350
sheet("A4").Value = "Supplies"
sheet("B4").Value = 875
sheet("A5").Value = "Marketing"
sheet("B5").Value = 1200

' Add formulas for calculations
sheet("A7").Value = "Total:"
sheet("B7").Formula = "=SUM(B2:B5)"
sheet("A8").Value = "Average:"
sheet("B8").Formula = "=AVERAGE(B2:B5)"
sheet("A9").Value = "Maximum:"
sheet("B9").Formula = "=MAX(B2:B5)"
sheet("A10").Value = "Count:"
sheet("B10").Formula = "=COUNT(B2:B5)"

' Calculate all formulas
workbook.EvaluateAll()

' Access calculated values programmatically
Dim total As Decimal = sheet("B7").DecimalValue
Console.WriteLine($"Calculated total: {total}")
workbook.SaveAs("BudgetCalculations.xlsx")
$vbLabelText   $csharpLabel

Formula özelliği, standart Excel formül sözdizimini kabul eder -- Microsoft Excel'de çalışan aynı formüller burada da çalışır. Formülleri ayarladıktan sonra, sonuçları hesaplamak için EvaluateAll() çağırın. Bu adım, hesaplanmış değerlerin, DecimalValue, IntValue veya StringValue gibi yazılı özellikler aracılığıyla hemen kullanılabilir olmasını sağlar. EvaluateAll() çağrılmadan, formüller Excel'de açıldıklarında doğru şekilde kaydedilir ve hesaplanır, ancak sonuçlara programatik erişim için önce değerlendirme gereklidir.

Çıktı

.NET Core Excel Elektronik Tablosu: IronXL Kullanarak C# ile Profesyonel Excel Çalışma Sayfası Dosyaları Oluşturun: Görsel 4 - Excel Formül Çıktısı

.NET Core Excel Elektronik Tablosu: IronXL Kullanarak C# ile Profesyonel Excel Çalışma Sayfası Dosyaları Oluşturun: Görsel 5 - Konsol Çıktısı

IronXL, matematiksel işlemler (SUM, AVERAGE, ROUND), istatistiksel fonksiyonlar (COUNT, MAX, MIN, STDEV), metin manipülasyonu (CONCATENATE, LEFT, RIGHT) ve mantıksal işlemler (IF, AND, OR) dahil olmak üzere 150'den fazla Excel fonksiyonunu destekler. Gelişmiş senaryolar için, sayfalar arasında hücre referansları dahil, formül düzenleme kılavuzuna bakın.

Yerleşik Toplama Yöntemleri

Excel dosyasında formüllerin kalıcı olması gerekmeyen daha basit senaryolar için, IronXL yerleşik toplama yöntemleri sunar:

decimal sum = sheet["B2:B5"].Sum();
decimal avg = sheet["B2:B5"].Avg();
decimal max = sheet["B2:B5"].Max();
decimal sum = sheet["B2:B5"].Sum();
decimal avg = sheet["B2:B5"].Avg();
decimal max = sheet["B2:B5"].Max();
Dim sum As Decimal = sheet("B2:B5").Sum()
Dim avg As Decimal = sheet("B2:B5").Avg()
Dim max As Decimal = sheet("B2:B5").Max()
$vbLabelText   $csharpLabel

Bu yöntemler, hesaplamaların tabloyu görünür formüller olarak göstermesi gerekmeyen durumlarda C# yerel bir alternatif sunar. Nesne yönelimli API'niz, string tabanlı formül sözdizimi gerektirmeden kodunuzu okunabilir ve tip güvenli halde tutar.


Excel Dosyalarını Nasıl Aktarırsınız ve İndirmeye Sunarsınız?

IronXL, farklı entegrasyon gereksinimlerini karşılamak için birden fazla dışa aktarma formatını destekler. Standart Excel formatlarının ötesinde, verilerin değiş tokuşu için CSV, web uygulamaları için JSON veya eski sistem uyumluluğu için TSV formatına dışa aktarım yapılabilir. Bu esneklik, Excel oluşturmayı herhangi bir iş akışına entegre etmeyi kolaylaştırır.

using IronXL;

WorkBook workbook = WorkBook.Load("BudgetCalculations.xlsx");

// Export to different formats
workbook.SaveAs("output.xlsx");      // Modern Excel (Office 2007+)
workbook.SaveAs("output.xls");       // Legacy Excel (97-2003)
workbook.SaveAsCsv("output.csv");    // CSV for data import/export
workbook.SaveAsJson("output.json");  // JSON for web APIs
using IronXL;

WorkBook workbook = WorkBook.Load("BudgetCalculations.xlsx");

// Export to different formats
workbook.SaveAs("output.xlsx");      // Modern Excel (Office 2007+)
workbook.SaveAs("output.xls");       // Legacy Excel (97-2003)
workbook.SaveAsCsv("output.csv");    // CSV for data import/export
workbook.SaveAsJson("output.json");  // JSON for web APIs
Imports IronXL

Dim workbook As WorkBook = WorkBook.Load("BudgetCalculations.xlsx")

' Export to different formats
workbook.SaveAs("output.xlsx")      ' Modern Excel (Office 2007+)
workbook.SaveAs("output.xls")       ' Legacy Excel (97-2003)
workbook.SaveAsCsv("output.csv")    ' CSV for data import/export
workbook.SaveAsJson("output.json")  ' JSON for web APIs
$vbLabelText   $csharpLabel

Her format, belirli kullanım durumlarına hizmet eder. Excel kullanıcılarıyla paylaşırken biçimlendirmeleri ve formülleri korumak için XLSX en iyi çalışır. Verilerin veritabanlarına, analiz araçlarına veya diğer tablo uygulamalarına aktarım için maksimum uyumluluğu sağlar. JSON, JavaScript ön uçları ve REST API'leri ile doğal olarak entegre olur.

Çıktı

.NET Core Excel Elektronik Tablosu: IronXL Kullanarak C# ile Profesyonel Excel Çalışma Sayfası Dosyaları Oluşturun: Görsel 6 - Modern Excel Çıktısı

.NET Core Excel Elektronik Tablosu: IronXL Kullanarak C# ile Profesyonel Excel Çalışma Sayfası Dosyaları Oluşturun: Görsel 7 - JSON Çıktısı

ASP.NET Core'da Excel Dosyalarını Sunma

ASP.NET Core web uygulamaları için, Excel dosyalarını indirilebilir yanıtlar olarak sunmak için sadece birkaç satır kod gereklidir:

[HttpGet("download-report")]
public IActionResult DownloadReport()
{
    WorkBook workbook = WorkBook.Create(ExcelFileFormat.XLSX);
    WorkSheet sheet = workbook.CreateWorkSheet("Report");
    sheet["A1"].Value = "Generated Report";
    sheet["A2"].Value = DateTime.Now;

    var stream = workbook.ToStream();
    return File(
        stream,
        "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",
        "Report.xlsx"
    );
}
[HttpGet("download-report")]
public IActionResult DownloadReport()
{
    WorkBook workbook = WorkBook.Create(ExcelFileFormat.XLSX);
    WorkSheet sheet = workbook.CreateWorkSheet("Report");
    sheet["A1"].Value = "Generated Report";
    sheet["A2"].Value = DateTime.Now;

    var stream = workbook.ToStream();
    return File(
        stream,
        "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",
        "Report.xlsx"
    );
}
Imports Microsoft.AspNetCore.Mvc

<HttpGet("download-report")>
Public Function DownloadReport() As IActionResult
    Dim workbook As WorkBook = WorkBook.Create(ExcelFileFormat.XLSX)
    Dim sheet As WorkSheet = workbook.CreateWorkSheet("Report")
    sheet("A1").Value = "Generated Report"
    sheet("A2").Value = DateTime.Now

    Dim stream = workbook.ToStream()
    Return File(
        stream,
        "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",
        "Report.xlsx"
    )
End Function
$vbLabelText   $csharpLabel

ToStream() metodu, ASP.NET Core'un uygun MIME türüyle geri dönen File() metodu ile tamamlanmış Excel dosyasını içeren bir MemoryStream oluşturur. Bu desen, MVC kontrolörleri, API kontrolörleri ve minimal API'ler için aynıdır. Tarayıcı, belirtilen dosya adı ile otomatik olarak bir dosyayı indirmeyi tetikler, böylece kullanıcılar oluşturulan Excel dosyasını yerel olarak kaydeder.

Yüksek trafikli uygulamalar için, temel veriler sık değişmiyorsa, raporları eşzamanlı olmayan bir şekilde oluşturmayı ve sonuçları ön belleğe almayı düşünün -- bu yaklaşım performansı önemli ölçüde artırır. format dönüştürme belgeleri, şifre korumalı dosyalar dahil olmak üzere ek dışa aktarma senaryolarını kapsar.


IronXL, Diğer .NET Excel Kütüphaneleri ile Nasıl Karşılaştırılır?

.NET Excel manipülasyonu için farklı güçlü yanlarla çeşitli kütüphaneler vardır. Aşağıdaki tablo, üretim uygulamaları için en önemli kriterler arasında nasıl karşılaştırıldıklarını gösterir:

.NET Core geliştirme için .NET Excel kütüphanelerinin karşılaştırması
Özellik IronXL Açık Kaynak Alternatifler
Microsoft Office Kurulumu Gerekli Hayır Hayır
Teknik Destek Evet (24/5 mühendislik ekibi) Topluluk destekli
Platformlar arası (.NET Core) Tam destek Kütüphaneye göre değişir
Formül Hesaplama Motoru 150+ fonksiyon Sınırlı veya hiç yok
Lisans Modeli Ücretli, ücretsiz deneme sürümü ile Çeşitli açık kaynak

IronXL, güvenilir teknik destek, belgeler ve tutarlı güncellemeler gerektiren kurumsal senaryolarda mükemmeldir. Kütüphane, bozuk dosyalar, karmaşık formüller ve büyük veri kümeleri gibi mevcut sınır durumlarını ustalıkla ele alır -- açık kaynak alternatiflerinin mücadele edebileceği yerlerde. Geliştirme hızı ve üretim güvenilirliği öncelikli ekipler için, IronXL'nin ticari desteği güven sağlar.

Stack Overflow'daki tartışmalara göre, geliştiriciler, Excel kütüphanelerini .NET Core projeleri için seçerken API basitliği ve belge kalitesini sıkça belirtir. .NET Foundation aynı zamanda modern .NET geliştirme için platformlar arası dağıtımı bir öncelik olarak vurgular, bu da Office bağımsız kütüphaneleri sürdürülebilir çözümler için gerekli kılar.

Güvenlik bilincine sahip ekipler için: IronXL, Microsoft Office'ten bağımsız olarak çalışır ve Office Interop'tan kaçınır, bu da dış güvenlik açıklarının riskini en aza indirir. Şifreleme ve şifre koruma için yerleşik destek, yalnızca yetkili kullanıcıların önemli çalışma sayfalarına ve verilere erişmesini veya düzenlemesini sağlamak için oluşturulan Excel dosyalarını korumanıza olanak tanır. IronXL lisans seçeneklerini inceleyerek ekibinize uygun planı bulun.


Ölçekte Performansı Nasıl Ele Alırsınız?

Uygulamanız birçok eşzamanlı kullanıcı için Excel dosyaları oluşturduğunda veya büyük veri kümelerini işlediğinde, performans planlaması kritik hale gelir. IronXL, tamamen hafızada çalıştığı için büyük çalışma kitaplarını verimli bir şekilde işler, Office süreçlerini veya COM nesnelerini üretmez. Bu mimari, CPU ve hafıza yükünü tahmin edilebilir tutar.

Anahtar Performans Stratejileri

Veri ağırlıklı raporlar için hücreleri birer birer doldurmak yerine toplu olarak doldurun. Köşeli ayraç notasyonu sheet["A1:Z1000"] kullanarak bir aralığa yazmak, tek tek hücreler üzerinden geçerken oylumlu değerler yerleştirirken önemli ölçüde daha hızlı olabilir. Heterojen veriler için, dinamik hücre adresleme için dize interpolasyonu ile döngü kullanın.

Talep üzerine raporlar üreten ASP.NET Core uç noktaları için, ortaya çıkan bayt dizilerini veya MemoryStream çıktısını IMemoryCache kullanarak veya Redis gibi dağıtık bir önbellek kullanarak önbelleğe almayı düşünün. Temel veriler istekler arasında değişmiyorsa, ön belleğe alınmış Excel dosyaları yeniden oluşturma gereksinimi olmadan hemen döndürebilir. Bu strateji, özellikle pano dışa aktarımları ve planlanmış raporlar için etkilidir.

Her bir iş parçacığı kendi WorkBook örneği üzerinde çalıştığında, çok iş parçacıklı üretim IronXL ile güvenlidir. Çalışma kitabı veya çalışma sayfası örneklerini senkronizasyon olmadan iş parçacıkları arasında paylaşmaktan kaçının. Arka plan işleme görevleri için, Hangfire veya Quartz.NET gibi kütüphaneler, off-peak (düşük kullanım yoğunluğu) saatlerde raporlar oluşturmaya olanak tanıyarak, IronXL ile planlanmış rapor oluşturma ile birlikte çalışır.

En büyük veri kümeleri için, on binlerce satıra sahip tek sayfalar oluşturmak yerine verileri birden fazla çalışma sayfasına bölmeyi düşünün. DataSet dışa aktarma belgeleri, ADO.NET kaynaklarından toplu veri aktarımı için verimli desenler gösterir. Mevcut Excel dosyalarını okuma veya şifre korumalı çalışma kitapları ile çalışma gibi ileri düzey senaryoları içeren ek kod örnekleri, kapsamlı API referansında mevcuttur.


Sonraki Adımlarınız Neler?

.NET Core'da IronXL ile Excel tabloları oluşturmak, bir zamanlar bağımlılığı ağır bir görev olan işlemi düz bir .NET operasyonuna dönüştürür. Temel hücre manipülasyonundan formül hesaplamalarına ve profesyonel formatlamaya kadar, kütüphane, .NET 10 çalıştığı her yerde çalışan bir tablo otomasyonu için eksiksiz bir araç seti sunar -- Windows sunucuları, Linux konteynerları veya bulut platformları.

Platformlar arası mimari, geliştirme makineleri ve üretim ortamları arasında aynı davranışı sağlar, Office Interop çözümleri ile yaygın olan "Benim makinede çalışıyor" sorunlarını ortadan kaldırır. NuGet kurulum komutuyla başlayın, ilk çalışma kitabınızı oluşturun ve bu kılavuz boyunca gösterilen kalıplarla devam edin.

Tüm özellikleri kısıtlama olmadan keşfetmek için ücretsiz 30 günlük deneme süresini indir veya üretim konuşlandırması için lisans seçeneklerini görüntüleyin. IronXL kod örneklerini inceleyerek ek senaryoları aksiyonda görün, ve IronXL dokümantasyon merkezini kapsamlı API referansı ve ileri düzey yapılandırma kılavuzları için danışın.

Sıkça Sorulan Sorular

.NET Core'da Excel elektronik tablosu oluşturma için IronXL kullanmanın faydaları nelerdir?

IronXL, geliştiricilere, Microsoft Office veya Office Interop gerektirmeden programatik olarak Excel dosyaları oluşturma olanağı tanır ve Windows, Linux, ve macOS'da çapraz platform uyumluluğu sunar. Bu, modern, veri odaklı uygulamalar için idealdir.

IronXL, ASP.NET Core uygulamalarında kullanılabilir mi?

Evet, IronXL, finansal raporlama, envanter takibi ve veri dışa aktarma gibi güçlü otomasyon olanakları sunarak ASP.NET Core uygulamalarına entegre edilebilir.

IronXL ile web uygulamalarında Excel tabloları oluşturmak mümkün mü?

Evet. IronXL, web uygulamalarında Excel sayfası oluşturma ve indirme işlevini destekler, kullanıcılara karmaşık veri tablolarını dışa aktarma ve onlarla etkileşim kurma olanağı sunarak kullanıcı deneyimini geliştirir.

IronXL için Microsoft Office yüklü olması gerekiyor mu?

Hayır, IronXL için Microsoft Office yüklü olması gerekmiyor. Office Interop'tan bağımsız çalışır, bu da dağıtım ve entegrasyonu basitleştirir.

IronXL, .NET Core uygulamalarında veri erişimini nasıl artırır?

IronXL, geliştiricilerin programatik olarak Excel tabloları oluşturmalarına izin vererek veri erişimini artırır, bu da kullanıcıların karmaşık veri setleriyle etkileşim kurmasını ve bunlardan içgörüler elde etmesini kolaylaştırır.

IronXL bulut ortamlarında, Azure gibi, dağıtılabilir mi?

Evet, IronXL, Azure ve Docker konteynerleri gibi bulut ortamlarında dağıtılabilir, bu da onu ölçeklenebilir, bulut tabanlı uygulamalar için uygun hale getirir.

IronXL, macOS ve Linux ile uyumlu mu?

IronXL, macOS ve Linux ile tam uyumludur, .NET uygulamalarında Excel elektronik tablo oluşturma için çapraz platform bir çözüm sunar.

Hangi tür uygulamalar IronXL kullanmaktan fayda sağlar?

Finansal raporlama, envanter yönetimi ve otomatikli panolar gibi, veri odaklı çözümler gerektiren uygulamalar, Excel elektronik tablo oluşturma için IronXL kullanmaktan büyük ölçüde fayda sağlar.

IronXL, web uygulamalarında kullanıcı deneyimini nasıl iyileştirir?

IronXL, karmaşık veri tablolarını Excel elektronik tablolarına dışa aktarma olanağı sağlayarak kullanıcı deneyimini iyileştirir, böylece verilerin daha erişilebilir ve taşınabilir olmasını sağlar.

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