AFElements Class
- Last UpdatedNov 18, 2025
- 8 minute read
- PI System
- AF SDK 2024 R2
- Developer

Inheritance Hierarchy
OSIsoft.AFAFCollection
OSIsoft.AFAFCollectionAFElement
OSIsoft.AFAFNamedCollectionAFElement
OSIsoft.AF.AssetAFElements
Namespace: OSIsoft.AF.Asset
Assembly: OSIsoft.AFSDK (in OSIsoft.AFSDK.dll) Version: 3.1.1.1182
Syntax
public sealed class AFElements : AFNamedCollection<AFElement>
Public NotInheritable Class AFElements Inherits AFNamedCollection(Of AFElement) Dim instance As AFElements
public ref class AFElements sealed : public AFNamedCollection<AFElement^>
[<SealedAttribute>] type AFElements = class inherit AFNamedCollection<AFElement> end
The AFElements type exposes the following members.
Properties
| Name | Description | |
|---|---|---|
| Count |
Gets the number of items actually contained in the collection.
(Inherited from AFCollectionT.) | |
| Database |
This read-only property returns the AFDatabase where this object is defined.
| |
| Identity |
This read-only property contains identity of the object.
(Inherited from AFCollection.) | |
| IsDeleted |
This read-only property indicates whether the owner of the collection has been deleted.
(Inherited from AFCollection.) | |
| ItemGuid | Returns the item in the collection associated with the passed in ID. (Inherited from AFCollectionT.) | |
| ItemInt32 | Returns the item located at the passed in index. (Inherited from AFCollectionT.) | |
| ItemString |
Returns the specified object from the collection by name.
(Inherited from AFNamedCollectionT.) | |
| ItemIdentity |
This read-only property specifies the identity of the objects within the collection.
(Inherited from AFCollection.) | |
| KeepInMemory |
This property allows the collection to keep its items locked in memory.
| |
| Parent |
This read-only property returns the parent object which owns this
collection.
| |
| PISystem |
This read-only property allows access to the PISystem
associated with this collection.
(Inherited from AFCollection.) |
Methods
| Name | Description | |
|---|---|---|
| Add(String) |
This method is used to create a new AFElement without specifying a
template.
| |
| Add(AFElement) |
The Add method adds an existing AFElement to the collection.
| |
| Add(String, AFElementTemplate) |
This method is used to create a new AFElement based upon the specified
template.
| |
| Add(String, AFReferenceType) |
This method is used to create a new AFElement based upon the specified
reference type, but without specifying a template.
| |
| Add(AFElement, AFReferenceType) |
This method adds an existing AFElement to the collection
using the specified reference type.
| |
| Add(String, AFElementTemplate, AFReferenceType) |
This method is used to create a new AFElement based upon the specified
template and reference type.
| |
| Add(String, AFElementTemplate, Object) |
This method is used to create a new AFElement at the specified effective date
and based upon the specified template.
| |
| Add(String, AFElementTemplate, AFReferenceType, Object) |
This method is used to create a new AFElement at the specified effective
date and based upon the specified template and reference type.
| |
| Clear |
Removes all items from the collection.
(Inherited from AFCollectionT.) | |
| Contains(Guid) |
This method determines whether the collection contains a specific item referenced by id.
(Inherited from AFCollectionT.) | |
| Contains(T) |
This method determines whether the collection contains a specific item.
(Inherited from AFCollectionT.) | |
| Contains(String) |
This method determines whether the collection contains a specific item referenced by name.
(Inherited from AFNamedCollectionT.) | |
| CopyTo |
Copies the entire collection to a compatible one-dimensional Array,
starting at the specified index of the target array.
(Inherited from AFCollectionT.) | |
| Equals | Determines whether the specified object is equal to the current object. (Inherited from Object.) | |
| GetEnumerator |
Returns an enumerator that iterates through the collection.
(Inherited from AFCollectionT.) | |
| GetHashCode |
Gets the hash code for this instance of the object which is suitable for use in hashing
algorithms and data structures like a hash table.
(Inherited from AFCollection.) | |
| GetType | Gets the Type of the current instance. (Inherited from Object.) | |
| IndexOf |
Searches for the specified object and returns the zero-based index of the first
occurrence within the entire collection.
(Inherited from AFCollectionT.) | |
| Refresh |
Refresh the collection to make sure it's list of items is up-to-date.
| |
| Remove(Guid) |
Removes the item with the specified id from the collection.
(Inherited from AFCollectionT.) | |
| Remove(T) |
Removes the first occurrence of a specific object from the collection.
(Inherited from AFCollectionT.) | |
| Remove(String) |
The Remove method removes the item from the collection by name.
(Inherited from AFNamedCollectionT.) | |
| RemoveAt |
Removes the item at the specified index of the collection.
(Inherited from AFCollectionT.) | |
| Sort |
Sorts the items in the entire collection using the default comparer.
(Inherited from AFCollectionT.) | |
| Sort(IComparerT) |
Sorts the items in the entire collection using the specified comparer.
(Inherited from AFCollectionT.) | |
| Sort(Int32, Int32, IComparerT) |
Sorts the items in a range of items in the collection using the specified comparer.
(Inherited from AFCollectionT.) | |
| ToString |
Returns a String that represents the current object.
(Inherited from AFCollection.) |
Remarks
The AFDatabase.Elements collection contains all the AFElement objects defined at the top-level for the database. The AFElement.Elements collection is the full list of elements related to the parent element as allowed by the current viewer of the parent element.
A new AFElement is added to the hierarchy using one of the Add Overload methods. To create a new element at the top-level of the database, use one of the Add methods of the AFDatabase.Elements collection. To create a new child element of another element, use one of the Add methods of the element's AFElement.Elements collection. To add an existing child element of another element, use one of the Add Overload methods the element's AFElement.Elements collection.
When using the ItemString collection indexer to find an element by string, you can use a name like most other collections or a path to an element. When using a path, it is normally relative to the parent element, but can be a full path to any element. For example, the following are valid when looking up an element by path:
- MyParent["Child1\Child2"]
- MyParent["..\OtherElement\Child1\Child2"]
- MyParent["\\MySystem\MyDatabase\OtherParent\Child1\Child2"]
Examples
// This example demonstrates how to create an element and display its information. // Get the Database PISystems myPISystems = new PISystems(); AFDatabase myDB = myPISystems.DefaultPISystem.Databases.DefaultDatabase; // Create an Element AFElement myElement = myDB.Elements.Add("MyElement*"); myElement.Description = "This is my element"; // Display Element Information foreach (AFElement CurElement in myDB.Elements) { Console.WriteLine("Name of Element = {0}", CurElement.Name); Console.WriteLine("Description = {0}", CurElement.Description); }
' This example demonstrates how to create an element and display its information. ' Get the Database Dim myPISystems As New PISystems Dim myDB As AFDatabase = myPISystems.DefaultPISystem.Databases.DefaultDatabase ' Create an Element Dim CurElement As AFElement = myDB.Elements.Add("MyElement*") CurElement.Description = "This is my element" ' Display Element Information For Each CurElement In myDB.Elements Console.WriteLine("Name of Element = {0}", CurElement.Name) Console.WriteLine("Description = {0}", CurElement.Description) Next CurElement
No code example is currently available or this language may not be supported.
No code example is currently available or this language may not be supported.