Condividi tramite


Oid Classe

Definizione

Rappresenta un identificatore di oggetto di crittografia. La classe non può essere ereditata.

public ref class Oid sealed
public sealed class Oid
type Oid = class
Public NotInheritable Class Oid
Ereditarietà
Oid

Esempio

Nell'esempio di codice seguente viene illustrato l'utilizzo della classe Oid.

#using <system.dll>

using namespace System;
using namespace System::Security::Cryptography;
int main()
{
   
   // Assign values to strings.
   String^ Value1 = "1.2.840.113549.1.1.1";
   String^ Name1 = "3DES";
   String^ Value2 = "1.3.6.1.4.1.311.20.2";
   String^ InvalidName = "This name is not a valid name";
   String^ InvalidValue = "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.
   Oid ^ o1 = gcnew Oid( Value1 );
   Oid ^ o2 = gcnew 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.
   Oid ^ o3 = gcnew 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.
   Oid ^ o4 = gcnew Oid( InvalidValue );
   
   //Write out the property information of the Oid objects.
   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 );
   Console::WriteLine( "Oid3: Name and Value not compared: {0}, {1}", o3->FriendlyName, o3->Value );
   Console::WriteLine( "Oid4: Invalid Value used: {0}, {1} {2}", o4->FriendlyName, o4->Value, Environment::NewLine );
   
   //Create an Oid collection and add several Oid objects.
   OidCollection ^ oc = gcnew 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 );
   
   //Create an enumerator for moving through the collection.
   OidEnumerator ^ oe = 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 );
   oe->MoveNext();
   Console::WriteLine( "Second Oid in collection: {0},{1}", oe->Current->FriendlyName, oe->Current->Value );
   
   //Return index in the collection to the beginning.
   oe->Reset();
}
using System;
using System.Security.Cryptography;
public class OidSample
{
    public static void Main()
    {
        // Assign values to strings.
        string Value1 = "1.2.840.113549.1.1.1";
        string Name1 = "3DES";
        string Value2 = "1.3.6.1.4.1.311.20.2";
        string InvalidName = "This name is not a valid name";
        string InvalidValue = "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.
        Oid o1 = new Oid(Value1);
        Oid o2 = 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.
        Oid o3 = 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.
        Oid o4 = new Oid(InvalidValue);

        //Write out the property information of the Oid objects.
        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);
        Console.WriteLine("Oid3: Name and Value not compared: {0}, {1}", o3.FriendlyName, o3.Value);
        Console.WriteLine("Oid4: Invalid Value used: {0}, {1} {2}", o4.FriendlyName, o4.Value, Environment.NewLine);

        //Create an Oid collection and add several Oid objects.
        OidCollection oc = 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);

        //Create an enumerator for moving through the collection.
        OidEnumerator oe = 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);
        oe.MoveNext();
        Console.WriteLine("Second Oid in collection: {0},{1}", oe.Current.FriendlyName, oe.Current.Value);
        //Return index in the collection to the beginning.
        oe.Reset();
    }
}
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
End Class

Commenti

Gli identificatori di oggetto crittografico sono costituiti da una coppia valore/nome. Se una proprietà di una coppia è impostata su un valore noto, l'altra proprietà viene aggiornata automaticamente a un valore corrispondente. Ad esempio, se la Value proprietà è impostata su "1.3.6.1.5.5.7.3.4", la FriendlyName proprietà, localizzata, viene impostata automaticamente su "Secure Email".

Costruttori

Oid()

Inizializza una nuova istanza della classe Oid.

Oid(Oid)

Inizializza una nuova istanza della classe Oid usando l'oggetto Oid specificato.

Oid(String)

Inizializza una nuova istanza della classe Oid utilizzando un valore di stringa di un oggetto Oid.

Oid(String, String)

Inizializza una nuova istanza della classe Oid utilizzando il nome descrittivo e il valore specificati.

Proprietà

FriendlyName

Ottiene o imposta il nome descrittivo dell'identificatore.

Value

Ottiene o imposta il numero separato da punti dell'identificatore.

Metodi

Equals(Object)

Determina se l'oggetto specificato è uguale all'oggetto corrente.

(Ereditato da Object)
FromFriendlyName(String, OidGroup)

Crea un oggetto Oid da un nome descrittivo OID cercando nel gruppo specificato.

FromOidValue(String, OidGroup)

Crea un oggetto Oid utilizzando il valore OID e il gruppo specificati.

GetHashCode()

Funge da funzione hash predefinita.

(Ereditato da Object)
GetType()

Ottiene l'oggetto Type dell'istanza corrente.

(Ereditato da Object)
MemberwiseClone()

Crea una copia superficiale dell'oggetto Object corrente.

(Ereditato da Object)
ToString()

Restituisce una stringa che rappresenta l'oggetto corrente.

(Ereditato da Object)

Si applica a