Использовать общий список в интеллектуальных маркерах 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 оптимизирован для производительности, что позволяет ему эффективно обрабатывать большие наборы данных.