Введение

В этом уроке мы рассмотрим, как выполнять расширенную фильтрацию задач проекта в Aspose.Tasks для .NET, используя Util.And класс. Эта мощная функция позволяет разработчикам эффективно фильтровать задачи по нескольким критериям.

Предпосылки

Прежде чем начать, убедитесь, что у вас есть следующее:

  1. Базовые знания программирования на языке C#.
  2. Aspose.Tasks для .NET установлен. Если вы ещё этого не сделали, вы можете скачать его здесь. эта ссылка.
  3. Интегрированная среда разработки (IDE), такая как Visual Studio, для написания и запуска кода.

Импорт пространств имен

Для начала вам необходимо импортировать необходимые пространства имён в свой проект C#. Это позволит вам получить доступ к функциям Aspose.Tasks.

using Aspose.Tasks;
using System;
using System.Collections.Generic;
using Aspose.Tasks.Util;

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

Сначала инициализируйте проект Aspose.Tasks и соберите в нём все задачи. Для демонстрации предположим, что файл проекта называется Project2.mpp.

// Путь к каталогу документов
string dataDir = "Your Document Directory";
var project = new Project(dataDir + "Project2.mpp");

// Собрать все дочерние задачи
var taskCollector = new ChildTasksCollector();
TaskUtils.Apply(project.RootTask, taskCollector, 0);

Шаг 2: Определите условия фильтра

На этом этапе мы определим условия фильтрации задач. В нашем примере мы создадим два условия: одно для фильтрации сводных задач, а другое — для проверки того, что задачи не равны нулю.

var summaryCondition = new SummaryCondition();
var notNullCondition = new NotNullCondition();

Шаг 3: Объедините условия с помощью операции И

Следующий шаг — объединить эти условия с помощью Util.And класс. Это позволяет нам создать составное условие, которое требует соблюдения обоих критериев.

var combinedCondition = new And<Task>(summaryCondition, notNullCondition);

Шаг 4: Применение комбинированных условий и задач фильтрации

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

List<Task> filteredTasks = Filter(taskCollector.Tasks, combinedCondition);

Шаг 5: Вывод отфильтрованных задач

Наконец, мы пройдёмся по отфильтрованным задачам и выведём соответствующую информацию. Это поможет нам понять, какие задачи соответствуют нашим критериям.

Console.WriteLine("Filtered Tasks:");
foreach (var task in filteredTasks)
{
    Console.WriteLine(" - Task Name: " + task.Get(Tsk.Name));
}

Заключение

В этом уроке мы продемонстрировали, как выполнять расширенные операции фильтрации в Aspose.Tasks для .NET с помощью Util.And Класс. Комбинируя несколько условий, мы можем эффективно фильтровать задачи, тем самым повышая эффективность наших приложений для управления проектами.

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

Что такое Aspose.Tasks для .NET?

Aspose.Tasks для .NET — это комплексный API, предназначенный для разработчиков, позволяющий программно манипулировать файлами Microsoft Project в приложениях .NET.

Можно ли объединить более двух условий с помощью Util.And?

Да! Util.And класс позволяет вам комбинировать несколько условий, обеспечивая сложную логику фильтрации, адаптированную к вашим потребностям.

Существует ли бесплатная пробная версия Aspose.Tasks?

Да, вы можете загрузить бесплатную пробную версию с сайта эта ссылка.

Где можно найти подробную документацию по Aspose.Tasks?

Подробная документация доступна здесь.

Как мне обратиться за поддержкой по Aspose.Tasks?

Поддержка доступна через форум сообщества Aspose.Tasks, доступ к которому можно получить здесь.