Использовать общий список в интеллектуальных маркерах Aspose.Cells

Введение

Создание динамических отчетов и приложений, управляемых данными, является важным навыком в современном технологическом ландшафте. Если вы работаете с файлами .NET и Excel, вы, вероятно, слышали об Aspose.Cells, мощной библиотеке, разработанной специально для программного управления электронными таблицами Excel. Это всеобъемлющее руководство проведет вас через использование универсальных списков с интеллектуальными маркерами в Aspose.Cells, предоставляя вам пошаговый подход к оптимизации обработки данных в ваших приложениях.

Предпосылки

Прежде чем погрузиться в код, давайте быстро рассмотрим, что вам понадобится:

Базовые знания C#

У вас должно быть базовое понимание C# и того, как работать с классами и объектами. Если вы живо знакомы с объектно-ориентированным программированием, вы уже на правильном пути.

Aspose.Cells для .NET установлен

Убедитесь, что в вашем проекте .NET установлен Aspose.Cells. Вы можете загрузить библиотеку сСайт Aspose.

Среда Visual Studio

Наличие Visual Studio на вашем компьютере имеет решающее значение. Это наиболее распространенная среда разработки, в которой вы будете писать свой код C#.

Файл шаблона

Для этого урока мы будем использовать простой шаблон Excel, который вы можете настроить заранее. Вам понадобится только пустая рабочая книга для демонстрации.

Импортные пакеты

Теперь, когда у нас есть все необходимое, давайте начнем с импорта необходимых пакетов. Хорошим правилом является включение следующего пространства имен:

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

Эти пространства имен будут предоставлять функции, необходимые для работы с файлами Excel и стилизации ячеек.

Шаг 1: Определите свои классы

Сначала самое главное! Нам нужно определить нашиPerson иTeacher классы. Вот как:

Определить класс Person

ThePerson класс будет содержать основные атрибуты, такие как имя и возраст.

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;
    }
}

Определите класс учителя

Далее следуетTeacher класс, который наследует отPerson класс. Этот класс будет далее инкапсулировать список студентов.

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>();
    }
}

Шаг 2: Инициализация рабочей книги и создание конструктора

Теперь, когда у нас есть классы, пришло время инициализировать нашу рабочую книгу:

string dataDir = "Your Document Directory"; // Укажите каталог вашего документа
Workbook workbook = new Workbook(); // Новый экземпляр рабочей книги
Worksheet worksheet = workbook.Worksheets[0];

Шаг 3: Настройте смарт-маркеры на рабочем листе

Мы собираемся настроить интеллектуальные маркеры на листе Excel, указывающие, где будут размещены наши динамические значения.

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");

Шаг 4: Применение стилей для улучшения презентации

Любой хороший отчет должен быть визуально привлекательным! Давайте применим немного стиля к нашим заголовкам:

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);

Шаг 5: Создайте экземпляры учителя и ученика

Теперь давайте создадим экземпляры нашегоTeacher иPerson классы и заполнить их данными:

System.Collections.Generic.List<Teacher> list = new System.Collections.Generic.List<Teacher>();
// Создайте первый объект учителя
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)
};
//Создайте второй объект учителя
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)
};
// Добавить в список
list.Add(h1);
list.Add(h2);

Шаг 6: Установите источник данных для конструктора

Теперь нам нужно связать наши данные с подготовленным нами рабочим листом.

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

Шаг 7: Обработка маркеров

Следующий шаг — обработка всех смарт-маркеров, которые мы разместили ранее:

designer.Process();

Шаг 8: Автоматически подберите столбцы и сохраните книгу

Чтобы все выглядело профессионально, давайте автоматически подгоним столбцы и сохраним нашу книгу:

worksheet.AutoFitColumns();
designer.Workbook.Save(dataDir + "output.xlsx"); // Сохранить в указанном каталоге

Заключение

И вот оно! Вы только что динамически создали рабочий лист Excel, используя мощь универсальных списков и интеллектуальных маркеров с Aspose.Cells для .NET. Этот навык позволит вам легко создавать сложные отчеты и включать в свои приложения функции, основанные на данных. Независимо от того, создаете ли вы школьные отчеты, бизнес-аналитику или любой динамический контент, методы, описанные в этом руководстве, помогут значительно оптимизировать ваш рабочий процесс.

Часто задаваемые вопросы

Что такое Aspose.Cells?

Aspose.Cells — это библиотека .NET для создания и управления файлами Excel без необходимости установки Microsoft Excel.

Могу ли я использовать Aspose.Cells для других форматов файлов?

Да! Aspose предлагает библиотеки для PDF, Word и других форматов, что делает его универсальным для управления документами.

Нужна ли мне лицензия для использования Aspose.Cells?

Вы можете начать с бесплатной пробной версииздесь, но для использования в производстве требуется платная лицензия.

Что такое умные маркеры?

Смарт-маркеры — это заполнители в шаблонах Excel, которые заменяются фактическими данными при обработке Aspose.Cells.

Подходит ли Aspose.Cells для больших наборов данных?

Конечно! Aspose.Cells оптимизирован для производительности, что позволяет ему эффективно обрабатывать большие наборы данных.