Коллекция MS Project Outline Codes в Aspose.Tasks
Введение
В этом руководстве мы рассмотрим, как собирать структурные коды Microsoft Project с помощью Aspose.Tasks для .NET. Мы разобьем процесс на пошаговые инструкции, чтобы обеспечить ясность и понимание.
Предварительные условия
Прежде чем мы начнем, убедитесь, что у вас есть следующее:
- Visual Studio: установите Visual Studio в свою систему.
- Aspose.Tasks для .NET: Загрузите и установите Aspose.Tasks для .NET с сайтаздесь.
- Базовое понимание программирования на C#: Знакомство с C# будет полезным.
Импортировать пространства имен
Во-первых, импортируйте необходимые пространства имен для доступа к функциональности Aspose.Tasks в вашем проекте C#.
using Aspose.Tasks;
using System;
using Aspose.Tasks.Util;
Шаг 1. Загрузите файл проекта
Начните с загрузки файла Microsoft Project с помощьюProject
сорт.
String DataDir = "Your Document Directory";
var project = new Project(DataDir + "OutlineCodes2003.mpp");
Шаг 2. Соберите коды структуры
Создайте сборщик для сбора структурных кодов задач проекта.
var collector = new ChildTasksCollector();
TaskUtils.Apply(project.RootTask, collector, 0);
Шаг 3. Перебор задач и кодов структуры
Перебирайте собранные задачи и структурируйте коды, распечатывая их детали.
for (var i = 0; i < collector.Tasks.Count; i++)
{
var current = collector.Tasks[i];
if (current.Get(Tsk.Id) == 0)
{
continue;
}
Console.WriteLine("Print outline codes for the " + current.Get(Tsk.Name) + " task.");
Console.WriteLine("Count of outline codes: " + current.OutlineCodes.Count);
foreach (var outlineCode in current.OutlineCodes)
{
Console.WriteLine("Field Id: " + outlineCode.FieldId);
Console.WriteLine("Value Id: " + outlineCode.ValueId);
Console.WriteLine("Value Guid: " + outlineCode.ValueGuid);
Console.WriteLine();
}
}
Шаг 4. Добавьте определение пользовательского кода структуры
Добавьте в проект определение пользовательского кода структуры.
var outlineCodeDefinition = new OutlineCodeDefinition { FieldId = ((int)ExtendedAttributeTask.OutlineCode3).ToString("D"), Alias = "My Outline Code" };
project.OutlineCodes.Add(outlineCodeDefinition);
Шаг 5. Создайте и вставьте код структуры
Создайте структурный код и вставьте его в задачу.
var value = new OutlineValue { Type = OutlineValueType.Text, Value = "Val1", Description = "Descr1", ValueId = 1 };
outlineCodeDefinition.Values.Add(value);
var codeOne = new OutlineCode { FieldId = outlineCodeDefinition.FieldId, ValueId = 1, ValueGuid = value.ValueGuid.ToString("D").ToUpperInvariant() };
var task = project.RootTask.Children.GetByUid(2);
task.OutlineCodes.Add(codeOne);
Шаг 6: Манипулируйте структурными кодами
При необходимости манипулируйте структурными кодами, например вставляйте, удаляйте или очищайте их.
// Пример манипуляции
// ...
// Вставьте код с цифрой 2 в правой позиции
task.OutlineCodes.Insert(2, code2);
// Проверьте, был ли введен код
Console.WriteLine("Is outline codes contains the inserted value: " + task.OutlineCodes.Contains(code2));
Заключение
В этом руководстве мы узнали, как собирать структурные коды Microsoft Project с помощью Aspose.Tasks для .NET. Следуя этим шагам, вы сможете эффективно управлять структурными кодами в своих проектах, повышая организованность и ясность.
Часто задаваемые вопросы
Вопрос: Могу ли я использовать Aspose.Tasks для .NET с другими языками программирования?
О: Да, Aspose.Tasks for .NET в первую очередь ориентирован на платформу .NET, но также обеспечивает поддержку других языков программирования через Aspose.Tasks for Cloud.
Вопрос: Существуют ли какие-либо ограничения на размер файлов проекта, которые может обрабатывать Aspose.Tasks for .NET?
О: Aspose.Tasks for .NET может эффективно обрабатывать большие файлы Project, но производительность может варьироваться в зависимости от сложности и размера файла.
Вопрос: Совместим ли Aspose.Tasks для .NET с последними версиями Microsoft Project?
О: Да, Aspose.Tasks for .NET поддерживает различные версии Microsoft Project, включая самые последние.
Вопрос: Могу ли я настроить формат вывода при работе с Aspose.Tasks для .NET?
О: Конечно, Aspose.Tasks для .NET предоставляет широкие возможности для настройки формата вывода в соответствии с вашими требованиями.
Вопрос: Где я могу найти дополнительную поддержку или ресурсы для Aspose.Tasks для .NET?
О: Вы можете посетитьФорум Aspose.Tasks для любой помощи или вопросов, касающихся Aspose.Tasks для .NET.