OidCollection Class

 

Represents a collection of Oid objects. This class cannot be inherited.

Namespace:   System.Security.Cryptography
Assembly:  System (in System.dll)

System.Object
  System.Security.Cryptography.OidCollection

Public NotInheritable Class OidCollection
	Implements ICollection, IEnumerable

NameDescription
System_CAPS_pubmethodOidCollection()

Initializes a new instance of the OidCollection class.

NameDescription
System_CAPS_pubpropertyCount

Gets the number of Oid objects in a collection.

System_CAPS_pubpropertyIsSynchronized

Gets a value that indicates whether access to the OidCollection object is thread safe.

System_CAPS_pubpropertyItem(Int32)

Gets an Oid object from the OidCollection object.

System_CAPS_pubpropertyItem(String)

Gets the first Oid object that contains a value of the Value property or a value of the FriendlyName property that matches the specified string value from the OidCollection object.

System_CAPS_pubpropertySyncRoot

Gets an object that can be used to synchronize access to the OidCollection object.

NameDescription
System_CAPS_pubmethodAdd(Oid)

Adds an Oid object to the OidCollection object.

System_CAPS_pubmethodCopyTo(Oid(), Int32)

Copies the OidCollection object into an array.

System_CAPS_pubmethodEquals(Object)

Determines whether the specified object is equal to the current object.(Inherited from Object.)

System_CAPS_pubmethodGetEnumerator()

Returns an OidEnumerator object that can be used to navigate the OidCollection object.

System_CAPS_pubmethodGetHashCode()

Serves as the default hash function. (Inherited from Object.)

System_CAPS_pubmethodGetType()

Gets the Type of the current instance.(Inherited from Object.)

System_CAPS_pubmethodToString()

Returns a string that represents the current object.(Inherited from Object.)

NameDescription
System_CAPS_pubinterfaceSystem_CAPS_privmethodICollection.CopyTo(Array, Int32)

Copies the OidCollection object into an array.

System_CAPS_pubinterfaceSystem_CAPS_privmethodIEnumerable.GetEnumerator()

Returns an OidEnumerator object that can be used to navigate the OidCollection object.

NameDescription
System_CAPS_pubmethodAsParallel()

Overloaded. Enables parallelization of a query.(Defined by ParallelEnumerable.)

System_CAPS_pubmethodAsQueryable()

Overloaded. Converts an IEnumerable to an IQueryable.(Defined by Queryable.)

System_CAPS_pubmethodCast(Of TResult)()

Casts the elements of an IEnumerable to the specified type.(Defined by Enumerable.)

System_CAPS_pubmethodOfType(Of TResult)()

Filters the elements of an IEnumerable based on a specified type.(Defined by Enumerable.)

This class implements the ICollection interface.

The following code example shows how to use the OidCollection class.

Imports System
Imports System.Security.Cryptography


Public Class OidSample
   Shared msg As String
   Public Shared Sub Main()
      ' Assign values to strings.
      Dim Value1 As String = "1.2.840.113549.1.1.1"
      Dim Name1 As String = "3DES"
      Dim Value2 As String = "1.3.6.1.4.1.311.20.2"
      Dim InvalidName As String = "This name is not a valid name"
      Dim InvalidValue As String = "1.1.1.1.1.1.1.1"

      ' Create new Oid objects using the specified values.
      ' Note that the corresponding Value or Friendly Name property is automatically added to the object.
      Dim o1 As New Oid(Value1)
      Dim o2 As New Oid(Name1)

      ' Create a new Oid object using the specified Value and Friendly Name properties.
      ' Note that the two are not compared to determine if the Value is associated 
      '  with the Friendly Name.
      Dim o3 As New Oid(Value2, InvalidName)

      'Create a new Oid object using the specified Value. Note that if the value
      '  is invalid or not known, no value is assigned to the Friendly Name property.
      Dim o4 As New Oid(InvalidValue)

      'Write out the property information of the Oid objects.
	msg = "Oid1: Automatically assigned Friendly Name: " & o1.FriendlyName & ", " & o1.Value
	MsgBox(msg)
      'Console.WriteLine("Oid1: Automatically assigned Friendly Name: {0}, {1}", o1.FriendlyName, o1.Value)


      'Console.WriteLine("Oid2: Automatically assigned Value: {0}, {1}", o2.FriendlyName, o2.Value)
	msg = "Oid2: Automatically assigned Value: " & o2.FriendlyName & ", " & o2.Value
	MsgBox(msg)


      'Console.WriteLine("Oid3: Name and Value not compared: {0}, {1}", o3.FriendlyName, o3.Value)
	msg = "Oid3: Name and Value not compared: " & o3.FriendlyName & ", " & o3.Value
	MsgBox(msg)



     ' Console.WriteLine("Oid4: Invalid Value used: {0}, {1} {2}", o4.FriendlyName, o4.Value, Environment.NewLine)
	msg = "Oid4: Invalid Value used: " & o4.FriendlyName & ", " & o4.Value
	MsgBox(msg)



      'Create an Oid collection and add several Oid objects.
      Dim oc As New OidCollection()
      oc.Add(o1)
      oc.Add(o2)
      oc.Add(o3)
     ' Console.WriteLine("Number of Oids in the collection: {0}", oc.Count)
      ' Console.WriteLine("Is synchronized: {0} {1}", oc.IsSynchronized, Environment.NewLine)

	msg = "Number of Oids in the collection: " & oc.Count
	MsgBox(msg)
	msg = "Is synchronized: " & oc.IsSynchronized
	MsgBox(msg)


      'Create an enumerator for moving through the collection.
      Dim oe As OidEnumerator = oc.GetEnumerator()
      'You must execute a MoveNext() to get to the first item in the collection.
      oe.MoveNext()
      ' Write out Oids in the collection.
      'Console.WriteLine("First Oid in collection: {0},{1}", oe.Current.FriendlyName, oe.Current.Value)
	msg = "First Oid in collection: " & oe.Current.FriendlyName & ", " & oe.Current.Value
	MsgBox(msg)

      oe.MoveNext()
     ' Console.WriteLine("Second Oid in collection: {0},{1}", oe.Current.FriendlyName, oe.Current.Value)
	msg = "Second Oid in collection: " & oe.Current.FriendlyName & ", " & oe.Current.Value
	MsgBox(msg)

      'Return index in the collection to the beginning.
      oe.Reset()
   End Sub 'Main
End Class 'OidSample

.NET Framework
Available since 2.0

Any public static ( Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Return to top
Show: