Exago .NET API Documentation
DataObjectCollection Class
Members  Example 
WebReports.Api.Roles Namespace : DataObjectCollection Class
A DataObjectCollection represents all of the Data Objects defined in the Role's Data Objects list. Each data object in the list is represented by a DataObject object. Additionally, the Include All Folders, All Folders Read Only and Allow Folder Management settings (from the Main section of the Admin Console) are defined in this class. Do not instantiate it, reference it from the Role.Security.DataObjects property.
Object Model
DataObjectCollection ClassDataObject Class
Syntax
public class DataObjectCollection : System.Collections.Generic.List<DataObject> 
Remarks

Collection classes are enumerable Lists of a specific object type.

See the Example section for ways to iterate through and manipulate Collections.

Example
Various ways to interact with Collection objects.
/* Usings */
using System.Linq;
using WebReports.Api;
using WebReports.Api.Common;

/* Namespace and Class definitions omitted */

Logger Logger = Log.GetLogger();
Api Api = new Api("/Exago/");

EntityCollection Entities = Api.Entities; // get the static Api.Entities Collection by reference

foreach (Entity Entity in Entities) // iterate through the EntityCollection and log all items
    Logger.InfoFormat("Original - Entity: '{0}'", Entity.Name);

// List methods may be overridden or overloaded depending on the Collection type
Entities.Add(new Entity(Api.PageInfo, "Customers")); // add a new Entity "Customers" to Entities
Entities.Remove(Entities.GetEntity("Orders")); // remove Entity "Orders" from Entities

foreach (Entity Entity in Entities) // iterate and log again
    Logger.InfoFormat("Modified - Entity: '{0}'", Entity.Name);

// Standard List and IEnumerable Linq methods can be used on Collection objects
Entities.OrderBy(Entity => Entity.Name) // sort Entities by Entity.Name
// (Order does not matter for every Collection type)

// Iterate and log again, this time using List<T>.ForEach
Entities.ForEach(Entity => Logger.InfoFormat("Sorted - Entity: '{0}'", Entity.Name));

/*
This code writes the following output to the Exago logfile (in an example configuration):

Original - Entity: 'Orders'
Original - Entity: 'Products'
Modified - Entity: 'Products'
Modified - Entity: 'Customers'
Sorted - Entity: 'Customers'
Sorted - Entity: 'Products'

*/
Inheritance Hierarchy

System.Object
   System.Collections.Generic.List<T>
      WebReports.Api.Roles.DataObjectCollection

See Also

Reference

DataObjectCollection Members
WebReports.Api.Roles Namespace