Altbilgi içeriğine atla
IRONXL KULLANARAK

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

ASP.NET Core'da programlı şekilde Excel elektronik tablo oluşturma, finansal raporlama ve envanter takibinden veri dışa aktarma ve otomatikleştirilmiş panolara kadar güçlü otomasyon olanakları sunar. Web uygulama geliştirmede, .NET Core Excel elektronik tablo oluşturma entegrasyonu veri erişilebilirliği ve raporlamasını artırır, kullanıcıların karmaşık veri setlerinden değerli içgörülerle etkileşim kurmasını ve bunları elde etmesini sağlar. IronXL for .NET ile, geliştiriciler Microsoft Office'e bağımlı olmadan veya Office Interop kullanmadan Excel dosyaları oluşturabilir. Bu platformlar arası kütüphane Windows, Linux ve macOS'ta çalışır. Azure veya Docker kaplarında dağıtılan modern veri odaklı uygulamalar için idealdir.

Bu eğitim, profesyonel formatlama, formüller ve çeşitli dışa aktarma seçenekleriyle .NET Core Excel elektronik tablolarının nasıl oluşturulacağını anlatır. ASP.NET Core web uygulamaları, konsol uygulamaları veya arka plan hizmetleri oluştururken, bu teknikler tüm .NET 10 uygulamaları için geçerlidir. Sonunda, Visual Studio veya herhangi bir .NET geliştirme ortamında mevcut projelerle entegre olacak şekilde üretime hazır Excel dosyaları oluşturmak için çalışan bir kodunuz olacak.


.NET Core Projesine IronXL Nasıl Yüklenir?

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

Install-Package IronXL
dotnet add package IronXL
Install-Package IronXL
dotnet add package IronXL
SHELL

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

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

El ile DLL indirip yükleme gibi detaylı kurulum seçenekleri için IronXL kurulum kılavuzuna bakın. Linux geliştiricileri ayrıca platforma özgü rehberlik için Linux dağıtım dökümanlarını incelemelidir.

.NET Core Excel Elektronik Tablo: 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 kurulumu gerektirir ve Office Interop kullanır, ki bu Linux ya da kapsayıcı ortamlarda çalışmaz. Microsoft'un Office Interop üzerine dökümantasyonunda tartışıldığı gibi, Office Interop dağıtım karmaşıklığı ve lisanslama endişelerini beraberinde getirir. IronXL for .NET, Excel dosyalarını modern elektronik tablo becerileri çerçevesinde tamamen destekleyerek sınıfın tümünü işlem yapma yeteneğiyle saf bir .NET çözümü sunarak bu sınırlamaları ortadan kaldırır.

Kütüphane, önceki .NET Core sürümlerinin yanı sıra .NET 8, .NET 9 ve .NET 10'u destekler. Harici bağımlılıklar olmadan XLSX, XLS, CSV ve diğer elektronik tablo formatlarını işler. Bu, Microsoft Office'in kurulumunun pratik olmadığı sunucu tarafı uygulamaları, mikro hizmetler ve senaryolar için özellikle değerlidir. NuGet üzerinden kolay entegrasyon, Excel dosyalarınızı dakikalar içinde 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() yöntemi, yeni bir Excel çalışma kitabı 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 parametresi kabul eder. Küçük dosya boyutları ve modern araçlarla daha iyi uyumluluk nedeniyle çoğu senaryo için XLSX önerilir. CreateWorkSheet() yöntemi, Excel verilerinin bulunduğu adlandırılmış çalışma sayfaları ekler -- her iş kitabı, ilgili verileri organize etmek için birden fazla ayrı 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 bir hücreyi ve aralığı destekler ve toplu işlemleri herhangi bir elektronik tablo projesi için doğrudan yapar.

Çıktı

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


Çalışma Sayfaları Nasıl Eklenir ve Veriler Programlı Olarak Nasıl Doldurulur?

Gerçek dünya Excel elektron tablolari, birden fazla çalışma sayfası boyunca yapılandırılmış veriler içerir. IronXL, ister manuel veri girişi ile ister veri odaklı uygulamalarda otomatik veri hatlarıyla çalışıyor olun bilgileri düzenlemek ve hücreleri verimli şekilde doldurmak için esnek yöntemler sağlar.

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 adreslemesini mümkün kılarak, herhangi bir veri kaynağından satırları programatik olarak doldurmayı kolaylaştırır. Aralık söz dizimi sheet["D2:D7"] aynı anda birden fazla hücreye değerler uygular -- durum sütunları, varsayılan değerler veya veri bölgelerini başlatmak için kullanışlıdır. IronXL, veri türü dönüşümünü otomatik olarak yönetir, ondalık değerleri sayısal değerler olarak ve metin içeriğini metin olarak saklarken, oluşturulan dosya için uygun Excel veri türlerini korur.

Birden Fazla Çalışma Sayfası ile Çalışma

Birden fazla çalışma sayfası oluşturmak, ilgili Excel verilerini tek bir çalışma kitabı içinde mantıklı bir şekilde 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 uygulamalarda, IronXL Entity Framework Core, Dapper veya ham ADO.NET ile çalışır. DataTable objelerinden veri doğrudan çalışma sayfalarına aktarılabilir, raporlama iş akışlarını basitleştirir ve kullanıcıların sistemler arasında veri paylaşmalarına olanak tanır.

Dökümantasyonda çalışma sayfalarını nasıl yöneteceğinizi ve Excel dosyalarını nasıl yazacağınızı öğrenin. Varolan bir Excel dosyasını okuma konusunda Excel dosyası yükleme kılavuzuna bakın.

Çıktı

.NET Core Excel Elektronik Tablo: IronXL kullanarak C# ile Profesyonel Excel Çalışma Sayfası Dosyaları Oluşturun: Görsel 3 - Birden Fazla Çalışma Sayfası Çıktısı


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

Ham veri, doğru şekilde biçimlendirildiğinde anlam kazanır. IronXL, arka plan renkleri, yazı tipleri, kenarlıklar ve sayı formatları - Excel tablolarını ana sunumlar veya müşteri teslimatları için uygun raporlara dönüştürme yeteneği sağlar.

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.Hayırw;

// 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.Hayırw;

// 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 uygun formatlama seçeneklerini açar. Arka plan renkleri, # öneki ile veya onsuz altıgen kodları kabul eder, oysa FormatString, Excel'in özel biçimlendirme söz dizimi ile aynı olan sayı formatlarını uygular -- aynı kalıplar her iki ortamda da çalışır. Kenarlık stilleri, Hücre sınırları üzerinde titiz bir kontrol sağlar – İnce, Orta, Kalın ve Çift türlerini destekler.

Gelişmiş Biçimlendirme Teknikleri

Veri kapsamlı 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 kümeleri için kullanılabilirliği önemli ölçüde artıran ince bir iyileştirmedir. sheet.PrintSetup aracılığıyla yazdırma yapılandırması, fiziksel çıktı için yönlendirme, kenar boşlukları ve ölçeklendirmeyi ele alır.

Hücre biçimlendirme kılavuzunda ve kenarlık konfigürasyon dersinde ek stil seçeneklerini keşfedin. Bu araçlar size hücre görünümünün her yönü üzerinde tam kontrol sağlar.


Otomatik Hesaplamalar için Excel Formülleri Nasıl Kullanılır?

Excel'in hesaplama motoru veri analizi otomasyonu sağlar ve IronXL, formülleri tam olarak destekler. Formülleri standart Excel sözdizimi kullanarak dize olarak ayarlayın ve IronXL, istenildiğ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öz dizimini 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() işlevini çağırın. Bu adım, hesaplanan değerlerin hemen DecimalValue, IntValue veya StringValue gibi yazılı özellikler yoluyla kullanılabilir olmasını sağlar. EvaluateAll() çağrılması olmadan, formüller yine de Excel'de açıldığında doğru bir şekilde kaydedilir ve hesaplanır, ancak sonuçlara programatik erişim öncelikli değerlendirme gerektirir.

Çıktı

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

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

IronXL, matematiksel işlemler (TOPLAM, ORTALAMA, YUVARLAK), istatistiksel fonksiyonlar (SAY, MAKS, MİN, STDEV), metin manipülasyonu (BİRLEŞTIR, SOL, SAĞ) ve mantıksal işlemler (EĞER, VE, VEYA) dahil olmak üzere 150'den fazla Excel fonksiyonunu destekler. Gelişmiş senaryolar için formül düzenleme kılavuzuna bakın, çalışma sayfaları arasındaki hücre referansları dahil.

Yerleşik Toplama Yöntemleri

Formüllerin Excel dosyasında kalıcı olmasına gerek olmayan 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 elektronik tabloda görünür formüller olarak görünmesi gerekmeyen durumlarda C#-yerli bir alternatif sunar. Nesne tabanlı API, string tabanlı formül sözdizimi gerektirmeksizin kodunuzu okunabilir ve tür güvenli tutar.


Excel Dosyalarını Nasıl Dışa Aktarır 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, elektronik tablolar veri alışverişi için CSV, web uygulamaları için JSON veya eski sistem uyumluluğu için TSV olarak dışa aktarı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. XLSX, Excel kullanıcılarıyla paylaşırken biçimlendirme ve formülleri korumak için en iyi şekilde çalışır. CSV, veritabanlarına, analitik araçlara veya diğer elektronik tablo uygulamalarına veri aktarma için maksimum uyumluluğu sağlar. JSON, JavaScript ön yüzleri ve REST API'leri ile doğal olarak entegre olur.

Çıktı

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

.NET Core Excel Elektronik Tablo: 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 sadece birkaç satır kod gerektirir:

[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.Hayırw;

    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.Hayırw;

    var stream = workbook.ToStream();
    return File(
        stream,
        "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",
        "Report.xlsx"
    );
}
<AttributeUsage(AttributeTargets.Method, Inherited:=True, AllowMultiple:=False)>
Public Class HttpGetAttribute
    Inherits Attribute

    Public Sub New(route As String)
    End Sub
End Class

<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() yöntemi, eksiksiz Excel dosyasını içeren bir MemoryStream oluşturur, bu da ASP.NET Core'un File() yöntemi tarafından uygun MIME türü ile döndürülür. Bu desen, MVC denetleyicileri, API denetleyicileri ve minimal API'lar için aynen çalışır. Tarayıcı, belirtilen dosya adıyla bir dosya indirmeyi otomatik olarak tetikler, böylece kullanıcıların oluşturulan Excel dosyasını yerel olarak kaydetmelerine olanak tanır.

Yoğun trafikli uygulamalar için, temel veriler sık sık değişmediğinde raporları asenkron olarak oluşturmayı ve sonuçları önbelleğe almayı düşünün -- bu yaklaşım performansı önemli ölçüde artırır. Şifre korumalı dosyalar dahil, ek dışa aktarma senaryolarını içeren format dönüşüm belgelendirmesine göz atın.


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

.NET Excel manipülasyonu için farklı güçlü yönlere sahip birkaç kütüphane vardır. Aşağıdaki tablo, üretim uygulamaları için en önemli kriterlere göre nasıl karşılaştırıldıklarını gösterir:

.NET Core gelişimi 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 tabanlı
Çapraz Platform (.NET Core) Tam destek Kütüphaneye göre değişir
Formül Hesaplama Motoru 150+ fonksiyon Sınırlı veya yok
Lisans Modeli Ücretli, ücretsiz deneme ile Çeşitli açık kaynak

IronXL, güvenilir teknik destek, dokümantasyon ve tutarlı güncellemeler gerektiren kurumsal senaryolarda öne çıkar. Kütüphane, bozuk dosyalar, karmaşık formüller ve büyük veri kümeleri gibi uç durumları zarifçe ele alır -- açık kaynak alternatiflerinin zorlanabileceği durumlar. Geliştirme hızını ve üretim güvenilirliğini önceliklendiren ekipler için, IronXL'nin ticari desteği iç huzuru sağlar.

Stack Overflow üzerindeki tartışmalara göre, geliştiriciler API basitliği ve dokümantasyon kalitesini .NET Core projeleri için Excel kütüphanelerini seçerken belirleyici faktörler olarak sık sık belirtmektedir. .NET Foundation ayrıca ofis bağımsız kütüphanelerin modern .NET gelişimi için öncelikli olduğunu vurgulamakta, çapraz platform dağıtımını sürdürülebilir çözümler için esansiyel hale getirmektedir.

Güvenlik bilincine sahip ekipler için: IronXL, Microsoft Office'ten bağımsız çalışır ve Office Interop'tan kaçınarak dış güvenlik açıkları riskini minimize eder. Şifreleme ve parola koruması için yerleşik destek, oluşturulan Excel dosyalarını korumanıza olanak tanır, böylece yalnızca yetkili kullanıcıların kritik çalışma sayfalarına ve verilere erişim veya düzenleme yapabilmesi sağlanır. Ekibinize uygun planı bulmak için IronXL lisanslama seçeneklerini inceleyin.


Büyük Ölçekli Performansı Nasıl Yönetirsiniz?

Uygulamanız birçok eşzamanlı kullanıcı için Excel dosyaları oluşturuyorsa veya büyük veri kümelerini işliyorsa, performans planlaması kritik hale gelir. IronXL, tümüyle bellekte çalıştığı için büyük çalışma kitaplarını verimli bir şekilde yönetir, bu da Office işlemleri veya COM nesneleri başlatılmadan gerçekleştirilir. Bu mimari, CPU ve bellek yükünü tahmin edilebilir kılar.

Anahtar Performans Stratejileri

Veri ağırlıklı raporlar için, hücreleri tek tek yerine toplu olarak doldurun. Köşeli ayraç notasyonu sheet["A1:Z1000"] kullanarak bir aralığa yazmak, tek tek hücreler üzerinden yinelemeye göre daha hızlı olabilir ve bu durumdaki değerleri ayarlamak için kullanılabilir. Heterojen veriler için, dinamik hücre adresleme için string interpolasyonu ile döngüler kullanın.

Talep üzerine rapor üreten ASP.NET Core uç noktaları için, oluşan bayt dizilerini veya MemoryStream çıktısını IMemoryCache veya Redis gibi dağıtılmış bir önbellekle önbelleğe almayı düşünün. Altındaki veriler istekler arasında değişmediğinde, önbelleğe alınmış Excel dosyaları yeniden oluşturulmadan hemen döndürülebilir. Bu strateji özellikle pano dışa aktarımları ve planlanmış raporlar için etkilidir.

Her bir thread'in kendi WorkBook örneği üzerinde çalıştığı sürece IronXL ile çoklu thread oluşturma güvenlidir. Excel veya çalışma sayfası örneklerini iş parçacıkları arasında senkronizasyon olmadan paylaşmaktan kaçının. Arka plan iş işlemi için, Hangfire veya Quartz.NET gibi kütüphaneler, rapor oluşturma için IronXL ile birlikte çalışır, böylece dosyaları yoğun saatlerin dışında önceden oluşturabilirsiniz.

En büyük veri setleri için, tek yapraklar yerine on binlerce satıra sahip tek sayfalar oluşturmak yerine verileri birden fazla çalışma sayfasına ayırmayı düşünün. ADO.NET kaynaklarından yapılan toplu veri transferi için verimli modeller gösteren veri kümesi dışa aktarma belgelendirmesine bakın. Mevcut Excel dosyalarını okuma veya parola korumalı çalışma kitaplarıyla çalışma gibi ileri senaryoları kapsayan ek kod örnekleri, tamamlanmış API referansında mevcuttur.


Sıradaki Adımlarınız Neler?

IronXL ile .NET Core Excel elektronik tabloları oluşturmak, bir zamanlar bağlayıcılık gerektiren bir görevi, basit bir .NET operasyona dönüştürür. Hücre manipülasyonundan formül hesaplamalarına ve profesyonel biçimlendirmeye kadar, bu kütüphane Windows sunucuları, Linux konteynerleri veya bulut platformlarında çalışacak şekilde her .NET 10 çalıştığı yerde bir elektronik tablo otomasyonu için eksiksiz bir araç takımı sunar.

Çapraz platform mimarisi, geliştirme makineleri ve üretim ortamları arasında aynı davranışı sağlar, Office Interop çözümleriyle yaygın olan 'benim makinemde ç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 örnekleri kullanarak geliştirin.

Tüm özellikleri sınırsız olarak keşfetmek için ücretsiz 30 günlük bir deneme sürümünü indirin veya üretim dağıtımı için lisanslama seçeneklerini görüntüleyin. Ek senaryoları eylem içinde görmek için IronXL kod örneklerine göz atın ve IronXL dokümantasyon merkezinde eksiksiz API referansı ve ileri düzey yapılandırma kılavuzları için inceleme yapın.

Sıkça Sorulan Sorular

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

IronXL, geliştiricilerin Microsoft Office veya Office Interop ihtiyaçı olmadan programatik olarak Excel dosyaları oluşturmalarına olanak tanır ve Windows, Linux ve macOS üzerinde çapraz platform uyumluluğu sunar. Bu, modern, veri odaklı uygulamalar için idealdir.

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

Evet, IronXL, güçlü otomasyon olanakları sağlayarak mali raporlama, envanter takibi ve veri dışa aktarma gibi işlemler için ASP.NET Core uygulamalarına entegre edilebilir.

IronXL kullanarak web uygulamalarında Excel elektronik tabloları üretmek mümkün mü?

Evet. IronXL, web uygulamalarında Excel sayfası oluşturma ve indirme işlevselliğini destekler, kullanıcıların karmaşık veri tablolarını dışa aktarmasına ve etkileşime geçmesine olanak tanıyarak kullanıcı deneyimini geliştirir.

IronXL'nin kurulumunu gerektirir mi?

Hayır, IronXL'nin kurulumunu gerektirmez. Office Interop'tan bağımsız çalışır, bu da dağıtımı ve entegrasyonu basitleştirir.

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

IronXL, geliştiricilerin programatik olarak Excel elektronik tabloları oluşturmalarına olanak tanıyarak, kullanıcıların karmaşık veri kümelerinden daha kolay içgörüler elde etmesini sağlar.

IronXL, Azure gibi bulut ortamlarında 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 uyumlu olup, .NET uygulamalarında çapraz platform eksel dosyası oluşturma çözümü sunar.

Hangi tür uygulamalar IronXL kullanılmasından fayda görür?

Finansal raporlama, envanter yönetimi ve otomatik panolar gibi veri odaklı çözümler gerektiren uygulamalar, IronXL'yi kullanarak Excel elektronik tabloları oluşturma işlemlerinden büyük fayda sağlar.

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

IronXL, karmaşık veri tablolarını Excel elektronik tablolarına dışa aktararak kullanıcı deneyimini geliştirir, böylece veriler daha erişilebilir ve taşınabilir hale gelir.

Jordi Bardia
Yazılım Mühendisi
Jordi Python, C# ve C++ konularında en yetkin, Iron Software'deki yeteneklerini kullanmadığı zamanlarda; oyun programlıyor. Ürün testi, ürün geliştirme ve araştırma sorumluluklarını paylaşan Jordi, sürekli ürün gelişimine büyük değer katıyor. Çeşitli deneyimleri onu ...
Daha Fazlasını Oku

Iron Destek Ekibi

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