Gebruik generieke lijst in slimme markers Aspose.Cells

Invoering

Het maken van dynamische rapporten en datagestuurde applicaties is een essentiële vaardigheid in het huidige techlandschap. Als u met .NET- en Excel-bestanden werkt, hebt u waarschijnlijk wel eens gehoord van Aspose.Cells, een krachtige bibliotheek die speciaal is ontworpen voor het programmatisch manipuleren van Excel-spreadsheets. Deze uitgebreide gids leidt u door het gebruik van generieke lijsten met slimme markeringen in Aspose.Cells en biedt u een stapsgewijze aanpak om uw gegevensverwerking in uw applicaties te optimaliseren.

Vereisten

Voordat we in de code duiken, leggen we eerst kort uit wat je nodig hebt:

Basiskennis van C#

Je moet een fundamenteel begrip hebben van C# en hoe je met klassen en objecten werkt. Als je enthousiast bent over objectgeoriënteerd programmeren, ben je al op de goede weg.

Aspose.Cells voor .NET geïnstalleerd

Zorg ervoor dat u Aspose.Cells in uw .NET-project hebt geïnstalleerd. U kunt de bibliotheek downloaden van deAspose-website.

Visual Studio-omgeving

Het is cruciaal om Visual Studio op uw machine te hebben staan. Het is de meest voorkomende ontwikkelomgeving waar u uw C#-code schrijft.

Een sjabloonbestand

Voor deze tutorial gebruiken we een eenvoudige Excel-sjabloon die u vooraf kunt instellen. U hebt alleen een lege werkmap nodig voor de demonstratie.

Pakketten importeren

Nu we de essentials op orde hebben, beginnen we met het importeren van de benodigde pakketten. Een goede vuistregel is om de volgende namespace op te nemen:

using System.IO;
using Aspose.Cells;
using System;
using System.Drawing;
using System.Collections.Generic;

Deze naamruimten bieden de functionaliteiten die nodig zijn voor het werken met Excel-bestanden en het opmaken van cellen.

Stap 1: Definieer uw klassen

Het belangrijkste eerst! We moeten onzePerson EnTeacher klassen. Zo doe je dat:

Definieer de Persoonsklasse

DePerson De klasse bevat basiskenmerken zoals naam en leeftijd.

public class Person
{
    int _age;
    string _name;
    
    public int Age
    {
        get { return _age; }
        set { _age = value; }
    }
    
    public string Name
    {
        get { return _name; }
        set { _name = value; }
    }
    
    public Person(string name, int age)
    {
        _age = age;
        _name = name;
    }
}

Definieer de leraarklasse

De volgende is deTeacher klasse, die erft van dePerson klas. Deze klas zal verder een lijst van studenten omvatten.

public class Teacher : Person
{
    private IList<Person> m_students;
    public IList<Person> Students
    {
        get { return m_students; }
        set { m_students = value; }
    }
    
    public Teacher(string name, int age) : base(name, age)
    {
        m_students = new List<Person>();
    }
}

Stap 2: Initialiseer de werkmap en maak een ontwerper

Nu we onze klassen hebben geplaatst, is het tijd om onze werkmap te initialiseren:

string dataDir = "Your Document Directory"; // Geef uw documentdirectory op
Workbook workbook = new Workbook(); // Nieuw werkmap-exemplaar
Worksheet worksheet = workbook.Worksheets[0];

Stap 3: Slimme markeringen instellen in het werkblad

We gaan slimme markeringen in het Excel-werkblad plaatsen, die aangeven waar onze dynamische waarden worden geplaatst.

worksheet.Cells["A1"].PutValue("Teacher Name");
worksheet.Cells["A2"].PutValue("&=Teacher.Name");
worksheet.Cells["B1"].PutValue("Teacher Age");
worksheet.Cells["B2"].PutValue("&=Teacher.Age");
worksheet.Cells["C1"].PutValue("Student Name");
worksheet.Cells["C2"].PutValue("&=Teacher.Students.Name");
worksheet.Cells["D1"].PutValue("Student Age");
worksheet.Cells["D2"].PutValue("&=Teacher.Students.Age");

Stap 4: Stijl toepassen om de presentatie te verbeteren

Elk goed rapport moet visueel aantrekkelijk zijn! Laten we wat stijl aan onze headers geven:

Range range = worksheet.Cells.CreateRange("A1:D1");
Style style = workbook.CreateStyle();
style.Font.IsBold = true;
style.ForegroundColor = Color.Yellow;
style.Pattern = BackgroundType.Solid;
StyleFlag flag = new StyleFlag();
flag.All = true;
range.ApplyStyle(style, flag);

Stap 5: Maak de docent- en studentinstanties

Laten we nu instanties van onzeTeacher EnPerson klassen en vul ze met gegevens:

System.Collections.Generic.List<Teacher> list = new System.Collections.Generic.List<Teacher>();
// Maak het eerste leraarobject
Teacher h1 = new Teacher("Mark John", 30);
h1.Students = new List<Person>
{
    new Person("Chen Zhao", 14),
    new Person("Jamima Winfrey", 18),
    new Person("Reham Smith", 15)
};
//Maak het tweede leraarobject
Teacher h2 = new Teacher("Masood Shankar", 40);
h2.Students = new List<Person>
{
    new Person("Karishma Jathool", 16),
    new Person("Angela Rose", 13),
    new Person("Hina Khanna", 15)
};
// Toevoegen aan de lijst
list.Add(h1);
list.Add(h2);

Stap 6: Stel de gegevensbron voor de ontwerper in

Nu moeten we onze gegevens koppelen aan het werkblad dat we hebben voorbereid.

WorkbookDesigner designer = new WorkbookDesigner();
designer.Workbook = workbook;
designer.SetDataSource("Teacher", list);

Stap 7: Verwerk de markers

De volgende stap is het verwerken van alle slimme markers die we eerder hebben geplaatst:

designer.Process();

Stap 8: Kolommen automatisch aanpassen en de werkmap opslaan

Om er zeker van te zijn dat alles er professioneel uitziet, passen we de kolommen automatisch aan en slaan we onze werkmap op:

worksheet.AutoFitColumns();
designer.Workbook.Save(dataDir + "output.xlsx"); // Opslaan in de opgegeven directory

Conclusie

En daar heb je het! Je hebt zojuist dynamisch een Excel-werkblad gemaakt, waarbij je de kracht van Generic Lists en Smart Markers met Aspose.Cells voor .NET benut. Met deze vaardigheid kun je eenvoudig complexe rapporten maken en datagestuurde functionaliteiten in je applicaties opnemen. Of je nu schoolrapporten, bedrijfsanalyses of dynamische content genereert, de technieken in deze handleiding helpen je workflow aanzienlijk te stroomlijnen.

Veelgestelde vragen

Wat is Aspose.Cells?

Aspose.Cells is een .NET-bibliotheek voor het maken en beheren van Excel-bestanden zonder dat Microsoft Excel geïnstalleerd hoeft te zijn.

Kan ik Aspose.Cells gebruiken voor andere bestandsformaten?

Jazeker! Aspose biedt bibliotheken voor PDF, Word en andere formaten, waardoor het veelzijdig is voor documentbeheer.

Heb ik een licentie nodig om Aspose.Cells te gebruiken?

U kunt beginnen met een gratis proefperiode vanafhier, maar voor productiegebruik is een betaalde licentie vereist.

Wat zijn slimme markers?

Slimme markeringen zijn tijdelijke aanduidingen in Excel-sjablonen die worden vervangen door daadwerkelijke gegevens wanneer ze door Aspose.Cells worden verwerkt.

Is Aspose.Cells geschikt voor grote datasets?

Absoluut! Aspose.Cells is geoptimaliseerd voor prestaties, waardoor het grote datasets efficiënt kan verwerken.