---
title: "MetadataEnumerator Class"
canonical: https://www.graphicsmill.com/docs/gm5/T_Aurigma_GraphicsMill_Codecs_MetadataEnumerator.htm
product: "Graphics Mill 5.5 for .NET"
---

This documentation is for the old version. [Go to the latest Graphics Mill docs](https://www.graphicsmill.com/docs/gm/)

# MetadataEnumerator Class
 
Provides a forward-only cursor to enumerate through metadata in a file.
 
**Namespace:** [Aurigma.GraphicsMill.Codecs](https://www.graphicsmill.com/docs/gm5/N_Aurigma_GraphicsMill_Codecs.htm.md)
 **Assembly:** Aurigma.GraphicsMill (in Aurigma.GraphicsMill.dll)
 
## Syntax
  
```
Public Class MetadataEnumerator _Implements IDictionaryEnumerator
```
 
```csharp
public class MetadataEnumerator : IDictionaryEnumerator
```
 
## Remarks
  
This interface should be implemented by each class that supports metadata.
 
This interface inherits from the [IEnumerator](http://msdn2.microsoft.com/en-us/1t2267t6) interface.
 
Initially, the enumerator is positioned before the first element in the collection. At this position, calling [Current](https://www.graphicsmill.com/docs/gm5/P_Aurigma_GraphicsMill_Codecs_MetadataEnumerator_Current.htm.md) throws an exception. Therefore, you must call [MoveNext()](https://www.graphicsmill.com/docs/gm5/M_Aurigma_GraphicsMill_Codecs_MetadataEnumerator_MoveNext.htm.md) to advance the enumerator to the first element of the collection before reading the value of [Current](https://www.graphicsmill.com/docs/gm5/P_Aurigma_GraphicsMill_Codecs_MetadataEnumerator_Current.htm.md).
 
After the end of the collection is passed, the enumerator is positioned after the last element in the collection, and calling [MoveNext()](https://www.graphicsmill.com/docs/gm5/M_Aurigma_GraphicsMill_Codecs_MetadataEnumerator_MoveNext.htm.md) returns **false**. If the last call to [MoveNext()](https://www.graphicsmill.com/docs/gm5/M_Aurigma_GraphicsMill_Codecs_MetadataEnumerator_MoveNext.htm.md) returned **false**, calling [Current](https://www.graphicsmill.com/docs/gm5/P_Aurigma_GraphicsMill_Codecs_MetadataEnumerator_Current.htm.md) throws an exception.
 
## Inheritance Hierarchy
  
- [System.Object](http://msdn2.microsoft.com/en-us/e5kfa45b)
    - Aurigma.GraphicsMill.Codecs.MetadataEnumerator
 
## Thread Safety
 Static members of this type are safe for multi-threaded operations. Instance members of this type are not safe for multi-threaded operations.
   
## See Also

### Reference

- [MetadataEnumerator Members](https://www.graphicsmill.com/docs/gm5/AllMembers_T_Aurigma_GraphicsMill_Codecs_MetadataEnumerator.htm.md)
- [Aurigma.GraphicsMill.Codecs Namespace](https://www.graphicsmill.com/docs/gm5/N_Aurigma_GraphicsMill_Codecs.htm.md)
