
ה-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
בחלק זה, אני אראה לך כיצד להתחבר לשרת הפרויקט ולקרוא או ליצור את הפרויקטים. על מנת להתחבר לשרת הפרויקט, עליך לדעת את הפרטים הבאים:
- כתובת ה-URL של Project Server, כלומר https://contoso.sharepoint.com
- דומיין כלומר contoso.com
- שם משתמש
- סיסמה
קרא פרויקטים מ-Project Server ב-C#
להלן השלבים להתחבר ל-Project Server ולאחזר ממנו את רשימת הפרויקטים.
- הצג NetworkCredential מחלקה ואתחל אותה עם אישורים.
- צור אובייקט במחלקה ProjectServerCredentials ואתחול אותו עם כתובת ה-URL של שרת הפרויקט ואובייקט NetworkCredential.
- צור אובייקט במחלקה ProjectServerManager וקבל רשימה של הפרויקטים באמצעות השיטה ProjectServerManager.GetProjectList().
דוגמת הקוד הבאה מראה כיצד לקרוא פרויקטים מ-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 באמצעות ProjectServerCredentials.
- צור ואתחול את האובייקט ProjectServerManager.
- אחזר את רשימת הפרויקטים באמצעות שיטת ProjectServerManager.GetProjectList().
דוגמת הקוד הבאה מראה כיצד לאחזר את רשימת הפרויקטים מ-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 באמצעות ProjectServerCredentials.
- טען את קובץ הפרויקט (.mpp) באמצעות המחלקה Project.
- צור ואתחול אובייקט ProjectServerManager.
- צור את הפרויקט באמצעות השיטה ProjectServerManager.CreateNewProject().
דוגמת הקוד הבאה מראה כיצד ליצור פרויקט חדש ב-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 מתוך תיעוד.