OidCollection 類別
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
表示 Oid 物件的集合。 此類別無法獲得繼承。
public ref class OidCollection sealed : System::Collections::ICollection
public sealed class OidCollection : System.Collections.ICollection
type OidCollection = class
interface ICollection
interface IEnumerable
Public NotInheritable Class OidCollection
Implements ICollection
- 繼承
-
OidCollection
- 實作
範例
下列程式碼範例示範如何使用 OidCollection 類別。
#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
備註
此類別會實作 ICollection 介面。
建構函式
OidCollection() |
初始化 OidCollection 類別的新執行個體。 |
屬性
Count |
取得集合中的 Oid 物件數目。 |
IsSynchronized |
取得值,這個值會表示 OidCollection 物件的存取是否為安全執行緒。 |
Item[Int32] |
從 OidCollection 物件取得 Oid 物件。 |
Item[String] |
取得第一個 Oid 物件,該物件包含的 Value 屬性值或 FriendlyName 屬性值與來自 OidCollection 物件的指定字串值相符。 |
SyncRoot |
取得可用來同步處理對 OidCollection 物件之存取的物件。 |
方法
Add(Oid) |
將 Oid 物件加入 OidCollection 物件。 |
CopyTo(Oid[], Int32) |
將 OidCollection 物件複製到陣列中。 |
Equals(Object) |
判斷指定的物件是否等於目前的物件。 (繼承來源 Object) |
GetEnumerator() |
傳回 OidEnumerator 物件,此物件可以用來巡覽 OidCollection 物件。 |
GetHashCode() |
做為預設雜湊函式。 (繼承來源 Object) |
GetType() |
取得目前執行個體的 Type。 (繼承來源 Object) |
MemberwiseClone() |
建立目前 Object 的淺層複製。 (繼承來源 Object) |
ToString() |
傳回代表目前物件的字串。 (繼承來源 Object) |
明確介面實作
ICollection.CopyTo(Array, Int32) |
將 OidCollection 物件複製到陣列中。 |
ICollection.IsSynchronized |
取得值,這個值表示對 ICollection 的存取是否同步 (安全執行緒)。 |
ICollection.SyncRoot |
取得可用以同步存取 ICollection 的物件。 |
IEnumerable.GetEnumerator() |
傳回 OidEnumerator 物件,此物件可以用來巡覽 OidCollection 物件。 |
擴充方法
Cast<TResult>(IEnumerable) |
將 IEnumerable 的項目轉換成指定的型別。 |
OfType<TResult>(IEnumerable) |
根據指定的型別來篩選 IEnumerable 的項目。 |
AsParallel(IEnumerable) |
啟用查詢的平行化作業。 |
AsQueryable(IEnumerable) |
將 IEnumerable 轉換成 IQueryable。 |