Class MetadataCollection
Represents a mutable collection of metadata records attached to a pipeline container.
public class MetadataCollection : IList<MetadataRecord>, ICollection<MetadataRecord>, IEnumerable<MetadataRecord>, IEnumerable
- Inheritance
-
MetadataCollection
- Implements
- Inherited Members
Constructors
MetadataCollection()
Initializes a new empty metadata collection.
public MetadataCollection()
Properties
Count
Gets the number of elements contained in the ICollection<T>.
public int Count { get; }
Property Value
- int
The number of elements contained in the ICollection<T>.
IsReadOnly
Gets a value indicating whether the ICollection<T> is read-only.
public bool IsReadOnly { get; }
Property Value
- bool
true if the ICollection<T> is read-only; otherwise, false.
this[int]
Gets or sets the element at the specified index.
public MetadataRecord this[int index] { get; set; }
Parameters
indexintThe zero-based index of the element to get or set.
Property Value
- MetadataRecord
The element at the specified index.
Exceptions
- ArgumentOutOfRangeException
indexis not a valid index in the IList<T>.- NotSupportedException
The property is set and the IList<T> is read-only.
Methods
Add(MetadataRecord)
Adds an item to the ICollection<T>.
public void Add(MetadataRecord item)
Parameters
itemMetadataRecordThe object to add to the ICollection<T>.
Exceptions
- NotSupportedException
The ICollection<T> is read-only.
Clear()
Removes all items from the ICollection<T>.
public void Clear()
Exceptions
- NotSupportedException
The ICollection<T> is read-only.
Clone()
Creates a deep copy of the metadata collection.
public MetadataCollection Clone()
Returns
- MetadataCollection
A cloned metadata collection.
Contains(MetadataRecord)
Determines whether the ICollection<T> contains a specific value.
public bool Contains(MetadataRecord item)
Parameters
itemMetadataRecordThe object to locate in the ICollection<T>.
Returns
- bool
true if
itemis found in the ICollection<T>; otherwise, false.
CopyTo(MetadataRecord[], int)
Copies the elements of the ICollection<T> to an Array, starting at a particular Array index.
public void CopyTo(MetadataRecord[] array, int arrayIndex)
Parameters
arrayMetadataRecord[]The one-dimensional Array that is the destination of the elements copied from ICollection<T>. The Array must have zero-based indexing.
arrayIndexintThe zero-based index in
arrayat which copying begins.
Exceptions
- ArgumentNullException
arrayis null.- ArgumentOutOfRangeException
arrayIndexis less than 0.- ArgumentException
The number of elements in the source ICollection<T> is greater than the available space from
arrayIndexto the end of the destinationarray.
GetByKey(string)
Gets the first metadata record that matches the specified key.
public MetadataRecord? GetByKey(string key)
Parameters
keystringThe metadata key to retrieve.
Returns
- MetadataRecord
The matching metadata record, or null when no match exists.
GetEnumerator()
Returns an enumerator that iterates through the collection.
public IEnumerator<MetadataRecord> GetEnumerator()
Returns
- IEnumerator<MetadataRecord>
An enumerator that can be used to iterate through the collection.
GetValue(string)
Gets the value associated with the specified metadata key.
public string? GetValue(string key)
Parameters
keystringThe metadata key to retrieve.
Returns
HasKey(string)
Determines whether the collection contains a metadata record with the specified key.
public bool HasKey(string key)
Parameters
keystringThe metadata key to look for.
Returns
IndexOf(MetadataRecord)
Determines the index of a specific item in the IList<T>.
public int IndexOf(MetadataRecord item)
Parameters
itemMetadataRecordThe object to locate in the IList<T>.
Returns
- int
The index of
itemif found in the list; otherwise, -1.
Insert(int, MetadataRecord)
Inserts an item to the IList<T> at the specified index.
public void Insert(int index, MetadataRecord item)
Parameters
indexintThe zero-based index at which
itemshould be inserted.itemMetadataRecordThe object to insert into the IList<T>.
Exceptions
- ArgumentOutOfRangeException
indexis not a valid index in the IList<T>.- NotSupportedException
The IList<T> is read-only.
Remove(MetadataRecord)
Removes the first occurrence of a specific object from the ICollection<T>.
public bool Remove(MetadataRecord item)
Parameters
itemMetadataRecordThe object to remove from the ICollection<T>.
Returns
- bool
true if
itemwas successfully removed from the ICollection<T>; otherwise, false. This method also returns false ifitemis not found in the original ICollection<T>.
Exceptions
- NotSupportedException
The ICollection<T> is read-only.
RemoveAt(int)
Removes the IList<T> item at the specified index.
public void RemoveAt(int index)
Parameters
indexintThe zero-based index of the item to remove.
Exceptions
- ArgumentOutOfRangeException
indexis not a valid index in the IList<T>.- NotSupportedException
The IList<T> is read-only.
Set(string, string)
Adds or updates a metadata value for the specified key.
public void Set(string key, string value)