Project Server ו-Project Online ב-C# ASP.NET

ה-Project Online ו-Project Server הם פתרונות ניהול הפרויקטים והתיקים העשירים בתכונות המסופקים על ידי Microsoft. שני הפתרונות מציעים מגוון כמעט דומה של תכונות ליצירה וניהול של פרויקטים, עם זאת, הם שונים על סמך הפתרון המתאים היטב לדרישות שלך. לדוגמה, אם אתה רוצה את הפתרון המקומי עם יותר שליטה על החומרה והתוכנה, אתה יכול לבחור ב-Project Server. מצד שני, Project Online משמש כמופע מבוסס ענן של Project Server ללא צורך בתשתית משלך.

ייתכן שיש צורך לגשת למידע של הפרויקטים מ-Project Server/Online מתוך היישומים שלך. על מנת להתמודד עם מקרים כאלה, במאמר זה, אראה לך כיצד ליצור/לקרוא את הפרויקטים ב-/מ-Project Server או Project Online בתוך יישומי ה-.NET שלך (ASP.NET וכו’) או שירותי האינטרנט שלך באמצעות C# .

C# API עבור Project Server/Online

ליצירת הפרויקטים החדשים וקריאת הפרויקטים הקיימים מ-Project Server/Online, נשתמש ב-Aspose.Tasks for .NET. זוהי ספריית כיתות חוצת פלטפורמות לקריאה וכתיבה של קבצי MS Project באופן תכנותי ביישומי .NET Standard או .NET Core. ה-API מתארח ב-NuGet וכן זמין כחבילת MSI ו-DLL דחוס בסעיף הורדות.

עבודה עם Project Server

בחלק זה, אני אראה לך כיצד להתחבר לשרת הפרויקט ולקרוא או ליצור את הפרויקטים. על מנת להתחבר לשרת הפרויקט, עליך לדעת את הפרטים הבאים:

קרא פרויקטים מ-Project Server ב-C#

להלן השלבים להתחבר ל-Project Server ולאחזר ממנו את רשימת הפרויקטים.

דוגמת הקוד הבאה מראה כיצד לקרוא פרויקטים מ-Project Server ב-C#.

string url = "https://contoso.sharepoint.com";
string domain = "CONTOSO.COM";
string userName = "Administrator";
string password = "MyPassword";

NetworkCredential windowsCredentials = new NetworkCredential(userName, password, domain);
ProjectServerCredentials projectServerCredentials = new ProjectServerCredentials(url, windowsCredentials);
ProjectServerManager manager = new ProjectServerManager(projectServerCredentials);

var list = manager.GetProjectList();
foreach (var projectInfo in list)
{
    Console.WriteLine("{0} - {1} - {2}", projectInfo.Id, projectInfo.CreatedDate, projectInfo.Name);
}

צור פרויקט ב-Project Server ב-C#

יצירת פרויקט ב-Project Server היא פשוטה כמו עוגה. כל שעליך לעשות הוא להתחבר ל-Project Server באותו אופן שעשית בדוגמה הקודמת, טען את קובץ הפרויקט (.mpp) באמצעות המחלקה Project וקרא לשיטת ProjectServerManager.CreateNewProject().

דוגמת הקוד הבאה מראה כיצד ליצור פרויקט חדש ב-Project Server ב-C#.

Project project = new Project("New Project.mpp");
NetworkCredential windowsCredentials = new NetworkCredential("Administrator", "MyPassword", "CONTOSO.COM");
ProjectServerCredentials projectServerCredentials = new ProjectServerCredentials("https://contoso.sharepoint.com", windowsCredentials);
ProjectServerManager manager = new ProjectServerManager(projectServerCredentials);
manager.CreateNewProject(project);

עבודה עם Project Online

עבודה עם Project Online דומה למדי לעבודה עם Project Server והיא שונה רק ביצירת החיבור. על מנת להתחבר ל-Project Online, עליך לדעת את הפרטים הבאים:

  • כתובת אתר
  • שם משתמש
  • סיסמה

קרא פרויקטים מ-Project Online ב-C#

להלן השלבים לקריאת פרויקטים מ-Project Online:

דוגמת הקוד הבאה מראה כיצד לאחזר את רשימת הפרויקטים מ-Project Online.

const string SharepointDomainAddress = "https://contoso.sharepoint.com";
const string UserName = "admin@contoso.onmicrosoft.com";
const string Password = "MyPassword";

ProjectServerCredentials credentials = new ProjectServerCredentials(SharepointDomainAddress, UserName, Password);
ProjectServerManager manager = new ProjectServerManager(credentials);
IEnumerable<ProjectInfo> list = manager.GetProjectList();

foreach (var info in list)
{
    Project project = manager.GetProject(info.Id);
    Console.WriteLine("{0} - {1} - {2}", info.Name, info.CreatedDate, info.LastSavedDate);
    Console.WriteLine("Resources count: {0}", project.Resources.Count);

    // משתמש יכול לקרוא את הפרויקט כזרם נתונים גולמיים
    var stream = manager.GetProjectRawData(info.Id);

    // עבודה עם נתוני פרויקט גולמיים
}

צור פרויקט על Project Online ב-C#

להלן השלבים ליצירת פרויקט חדש ב-Project Online:

דוגמת הקוד הבאה מראה כיצד ליצור פרויקט חדש ב-Project Online ב-C#.

string sharepointDomainAddress = "https://contoso.sharepoint.com";
string userName = "admin@contoso.onmicrosoft.com";
string password = "MyPassword";

ProjectServerCredentials credentials = new ProjectServerCredentials(sharepointDomainAddress, userName, password);

Project project = new Project("New Project.mpp");

ProjectServerManager manager = new ProjectServerManager(credentials);
manager.CreateNewProject(project);

למידע נוסף על Aspose.Tasks עבור .NET

אתה יכול ללמוד עוד על ניהול פרויקטים באמצעות Aspose.Tasks עבור .NET מתוך תיעוד.