ResourceAssignmentCollection Class

Represents a collection of ResourceAssignment objects.
Inheritance Hierarchy
SystemObject
  Aspose.TasksResourceAssignmentCollection

Namespace:  Aspose.Tasks
Assembly:  Aspose.Tasks (in Aspose.Tasks.dll) Version: 21.5
Syntax
public class ResourceAssignmentCollection : IList<ResourceAssignment>, 
	ICollection<ResourceAssignment>, IEnumerable<ResourceAssignment>, IEnumerable

The ResourceAssignmentCollection type exposes the following members.

Properties
  NameDescription
Public propertyCode exampleCount
Gets the number of objects contained in the ResourceAssignmentCollection.
Public propertyCode exampleIsReadOnly
Gets a value indicating whether this collection is read only.
Public propertyItem
Returns the element at the specified index.
Public propertyCode exampleParentProject
Gets the parent project of the ResourceAssignmentCollection object.
Methods
  NameDescription
Public methodAdd(ResourceAssignment)
This is the stub implementation of ICollection's Add method, that only throws NotSupportedException
Public methodCode exampleAdd(Task, Resource)
Adds new assignment to the ResourceAssignmentCollection.
Public methodCode exampleAdd(Task, Resource, Decimal)
Adds new assignment to the ResourceAssignmentCollection.
Public methodCode exampleAdd(Task, Resource, Double)
Adds new assignment to the ResourceAssignmentCollection.
Public methodEquals (Inherited from Object.)
Protected methodFinalize (Inherited from Object.)
Public methodCode exampleGetByUid
Returns an assignment with the specified uid.
Public methodCode exampleGetEnumerator
Returns an enumerator for this collection.
Public methodGetHashCode (Inherited from Object.)
Public methodGetType (Inherited from Object.)
Protected methodMemberwiseClone (Inherited from Object.)
Public methodRemove
Removes specified assignment from collection, if it is not read-only, otherwise throws NotSupportedException.
Public methodRemoveAt
Removes assignment at specified index, if collection is not read-only, otherwise throws NotSupportedException.
Public methodCode exampleToList
Converts the ResourceAssignmentCollection object to a list of ResourceAssignment objects.
Public methodToString (Inherited from Object.)
Examples
Shows how to work with resource assignment collections.
var project = new Project(DataDir + "TemplateResource2010.mpp");

var task = project.RootTask.Children.Add("Task 1");
var resource = project.Resources.Add("Resource 1");
var assignment = project.ResourceAssignments.Add(task, resource);
assignment.Set(Asn.Start, new DateTime(2019, 9, 23, 9, 0, 0));
assignment.Set(Asn.Work, project.GetWork(40));
assignment.Set(Asn.Finish, new DateTime(2019, 9, 27, 18, 0, 0));

var assignmentWithUnits = project.ResourceAssignments.Add(task, resource, 1d);
assignmentWithUnits.Set(Asn.Start, new DateTime(2019, 9, 23, 9, 0, 0));
assignmentWithUnits.Set(Asn.Work, project.GetWork(40));
assignmentWithUnits.Set(Asn.Finish, new DateTime(2019, 9, 27, 18, 0, 0));

var assignmentWithCost = project.ResourceAssignments.Add(task, resource);
assignmentWithCost.Set(Asn.Start, new DateTime(2019, 9, 23, 9, 0, 0));
assignmentWithCost.Set(Asn.Work, project.GetWork(40));
assignmentWithCost.Set(Asn.Finish, new DateTime(2019, 9, 27, 18, 0, 0));

Console.WriteLine("Print assignments for the project: " + project.ResourceAssignments.ParentProject.Get(Prj.Name));
Console.WriteLine("Resource assignment count: " + project.ResourceAssignments.Count);
foreach (var resourceAssignment in project.ResourceAssignments)
{
    Console.WriteLine("Task Name: " + resourceAssignment.Get(Asn.Task).Get(Tsk.Name));
    Console.WriteLine("Uid: " + resourceAssignment.Get(Asn.Uid));
    Console.WriteLine("Start: " + resourceAssignment.Get(Asn.Start));
    Console.WriteLine("Work: " + resourceAssignment.Get(Asn.Work));
    Console.WriteLine("Finish: " + resourceAssignment.Get(Asn.Finish));
}

var assignmentByUid = project.ResourceAssignments.GetByUid(2);
Console.WriteLine("Assignment By Uid Start: " + assignmentByUid.Get(Asn.Start));

// work with assignment...
Console.WriteLine("Is resource assignment collection read-only?: " + project.ResourceAssignments.IsReadOnly);

// convert the collection into a list
List<ResourceAssignment> resourceAssignments = project.ResourceAssignments.ToList();

// iterate over the list
foreach (var ra in resourceAssignments)
{
    Console.WriteLine(ra.ToString());
}
See Also