ProjectManagementPackage

ProjectManagementPackage class

Represents a native metadata package in a project management file.

public sealed class ProjectManagementPackage : DocumentPackage

Properties

Name Description
Author { get; set; } Gets or sets the author of the project.
Category { get; set; } Gets or sets the category.
Comments { get; set; } Gets or sets the user comments.
Company { get; set; } Gets or sets the company.
Count { get; } Gets the number of metadata properties.
CreationDate { get; set; } Gets or sets the creation date.
Guid { get; set; } Gets or sets the id of the project.
HyperlinkBase { get; set; } Gets or sets the hyperlink base.
Item { get; } Gets the MetadataProperty with the specified name.
Keys { get; } Gets a collection of the metadata property names.
Keywords { get; set; } Gets or sets the keywords.
LastAuthor { get; set; } Gets or sets the last author.
LastPrinted { get; set; } Gets or sets the project’s last print time.
LastSaved { get; set; } Gets or sets the date when the project was saved last time.
Manager { get; set; } Gets or sets the project manager.
MetadataType { get; } Gets the metadata type.
PropertyDescriptors { get; } Gets a collection of descriptors that contain information about properties accessible through the GroupDocs.Metadata search engine.
Revision { get; set; } Gets or sets the revision number.
SaveVersion { get; } Gets the version of Microsoft Office Project from which a project file was saved.
Subject { get; set; } Gets or sets the subject.
Template { get; set; } Gets or sets the template.
Title { get; set; } Gets or sets the title.

Methods

Name Description
virtual AddProperties(Func<MetadataProperty, bool>, PropertyValue) Adds known metadata properties satisfying the specified predicate. The operation is recursive so it affects all nested packages as well.
Clear() Removes all writable metadata properties from the package.
ClearBuiltInProperties() Removes all built-in metadata properties.
ClearCustomProperties() Removes all custom metadata properties.
Contains(string) Determines whether the package contains a metadata property with the specified name.
virtual FindProperties(Func<MetadataProperty, bool>) Finds the metadata properties satisfying the specified predicate. The search is recursive so it affects all nested packages as well.
GetEnumerator() Returns an enumerator that iterates through the collection.
Remove(string) Removes a writable metadata property by the specified name.
virtual RemoveProperties(Func<MetadataProperty, bool>) Removes metadata properties satisfying the specified predicate.
virtual Sanitize() Removes writable metadata properties from the package. The operation is recursive so it affects all nested packages as well.
Set(string, bool) Adds or replaces the metadata property with the specified name.
Set(string, DateTime) Adds or replaces the metadata property with the specified name.
Set(string, double) Adds or replaces the metadata property with the specified name.
Set(string, int) Adds or replaces the metadata property with the specified name.
Set(string, string) Adds or replaces the metadata property with the specified name.
virtual SetProperties(Func<MetadataProperty, bool>, PropertyValue) Sets known metadata properties satisfying the specified predicate. The operation is recursive so it affects all nested packages as well. This method is a combination of AddProperties and UpdateProperties. If an existing property satisfies the predicate its value is updated. If there is a known property missing in the package that satisfies the predicate it is added to the package.
virtual UpdateProperties(Func<MetadataProperty, bool>, PropertyValue) Updates known metadata properties satisfying the specified predicate. The operation is recursive so it affects all nested packages as well.

Remarks

Learn more

Examples

This code sample demonstrates how to update built-in properties in a ProjectManagement document.

using (Metadata metadata = new Metadata(Constants.InputMpp))
{
    var root = metadata.GetRootPackage<ProjectManagementRootPackage>();

    root.DocumentProperties.Author = "test author";
    root.DocumentProperties.CreationDate = DateTime.Now;
    root.DocumentProperties.Company = "GroupDocs";
    root.DocumentProperties.Comments = "test comment";
    root.DocumentProperties.Keywords = "metadata, built-in, update";

    // ... 

    metadata.Save(Constants.OutputMpp);
}

See Also