Aspose.tasks vs VSTO로 새로운 작업을 추가합니다

Microsoft Project (MPP/XML) 파일로 작업하는 동안 프로젝트에 새로운 작업을 추가해야합니다. 이 기사에서는 .NET 응용 프로그램에 MPP 파일을로드하고 기존 VSTO Interop API 및 .NET 라이브러리의 최신 ASPOSE.TASK를 사용하여 새로운 작업을 추가하는 방법을 보여줍니다.

개요

자동으로 작업을 관리하는 기능은 자동화 된 프로젝트 계획 워크 플로우에서 필수적입니다. 이 기사는 두 가지 접근 방식을 사용하여 새로운 작업을 Microsoft 프로젝트 파일에 삽입하는 방법을 보여줍니다.

두 가지 예 모두 구문, 종속성 및 프로그래밍 모델의 차이점을 명확하게 이해하는 데 도움이되는 동일한 시나리오 (` “task1”«이라는 단일 작업을 추가하는 것과 동일한 시나리오를 보여줍니다.

VSTO를 사용하여 작업을 추가하십시오

다음 코드는 VSTO (Office 용 Visual Studio Tools)를 사용하여 기존.mpp 파일에 새 작업을 추가하는 방법을 보여줍니다. 이 접근법은 COM Interop에 따라 달라지며 Microsoft 프로젝트를 시스템에 설치하고 적절하게 라이센스해야합니다.

 1Microsoft.Office.Interop.MSProject.Application projectApplication = new Application();
 2
 3object missingValue = System.Reflection.Missing.Value;
 4
 5projectApplication.FileOpenEx(@"C:\Project1.mpp",
 6    missingValue, missingValue, missingValue, missingValue,
 7    missingValue, missingValue, missingValue, missingValue,
 8    missingValue, missingValue, PjPoolOpen.pjPoolReadOnly,
 9    missingValue, missingValue, missingValue, missingValue,
10    missingValue);
11
12Microsoft.Office.Interop.MSProject.Project project = projectApplication.ActiveProject;
13
14Microsoft.Office.Interop.MSProject.Task task;
15task = project.Tasks.Add("Task1", 1);
16
17task.Start = "8/23/2012";
18task.Duration = 3 * 8 * 60;  // Duration in minutes (3 working days * 8 hours/day * 60 minutes)
19task.Text1 = "Task1";
20
21projectApplication.FileCloseAll(Microsoft.Office.Interop.MSProject.PjSaveType.pjSave);

Notes

Add a Task Using Aspose.Tasks for .NET

In contrast, the code below shows how to accomplish the same task using Aspose.Tasks for .NET. This API works independently of Microsoft Project and is ideal for web applications, services, and containerized environments.

 1Project project = new Project("New Project.mpp");
 2
 3Task task = project.RootTask.Children.Add("Task1");
 4task.Set(Tsk.ActualStart, DateTime.Parse("23-Aug-2012"));
 5
 6// Set duration in hours
 7task.Set(Tsk.Duration, project.GetDuration(24, TimeUnitType.Hour));
 8task.Set(Tsk.DurationFormat, TimeUnitType.Day);
 9
10project.Save("AddNewTask_out.xml", SaveFileFormat.XML);

주요 내용

요약

AspectVSTO/InteropAspose.Tasks for .NET
MS Project 필요✅ 예❌ 아니요
종속성 유형COM (Microsoft.Office.Interop.MSProject)Pure .NET
크로스 플랫폼 지원❌ Windows 전용✅ Windows, Linux, macOS (.NET 사용)
배포 적합성⚠ 데스크톱/서버 전용✅ 웹, 컨테이너, 서버리스
코드 복잡성⚠ 높음 (장황하고 보일러플레이트 사용 많음)✅ 간단하고 표현력 좋음

Aspose.Tasks는 Microsoft Project 형식 작업을 위한 현대적이고 확장 가능하며 유지 관리가 가능한 솔루션을 제공합니다. VSTO에서 마이그레이션하면 배포 유연성이 향상되고 안정성이 향상되며 개발자 친화적인 API 환경을 이용할 수 있습니다.

계속 알아보려면 다음 페이지를 확인하세요.

Subscribe to Aspose Product Updates

Get monthly newsletters & offers directly delivered to your mailbox.