Condividi tramite


Guid Costruttori

Definizione

Inizializza una nuova istanza della struttura Guid.

Overload

Guid(Byte[])

Inizializza una nuova istanza della struttura Guid con la matrice di byte specificata.

Guid(ReadOnlySpan<Byte>)

Inizializza una nuova istanza della struttura Guid con il valore rappresentato dall'intervallo di byte di sola lettura specificato.

Guid(String)

Inizializza una nuova istanza della struttura Guid con il valore rappresentato dalla stringa specificata.

Guid(ReadOnlySpan<Byte>, Boolean)
Guid(Int32, Int16, Int16, Byte[])

Inizializza una nuova istanza della struttura Guid usando gli interi e la matrice di byte specificati.

Guid(Int32, Int16, Int16, Byte, Byte, Byte, Byte, Byte, Byte, Byte, Byte)

Inizializza una nuova istanza della struttura Guid usando gli interi e i byte specificati.

Guid(UInt32, UInt16, UInt16, Byte, Byte, Byte, Byte, Byte, Byte, Byte, Byte)

Inizializza una nuova istanza della struttura Guid usando gli interi senza segno e i byte specificati.

Guid(Byte[])

Origine:
Guid.cs
Origine:
Guid.cs
Origine:
Guid.cs

Inizializza una nuova istanza della struttura Guid con la matrice di byte specificata.

public:
 Guid(cli::array <System::Byte> ^ b);
public Guid (byte[] b);
new Guid : byte[] -> Guid
Public Sub New (b As Byte())

Parametri

b
Byte[]

Matrice di byte a 16 elementi contenente i valori con cui inizializzare il GUID.

Eccezioni

b non ha una lunghezza di 16 byte.

Si applica a

Guid(ReadOnlySpan<Byte>)

Origine:
Guid.cs
Origine:
Guid.cs
Origine:
Guid.cs

Inizializza una nuova istanza della struttura Guid con il valore rappresentato dall'intervallo di byte di sola lettura specificato.

public:
 Guid(ReadOnlySpan<System::Byte> b);
public Guid (ReadOnlySpan<byte> b);
new Guid : ReadOnlySpan<byte> -> Guid
Public Sub New (b As ReadOnlySpan(Of Byte))

Parametri

b
ReadOnlySpan<Byte>

Intervallo di sola lettura contenente i byte che rappresentano il GUID. L'intervallo deve avere una lunghezza esatta di 16 byte.

Eccezioni

L'intervallo deve avere una lunghezza esatta di 16 byte.

Si applica a

Guid(String)

Origine:
Guid.cs
Origine:
Guid.cs
Origine:
Guid.cs

Inizializza una nuova istanza della struttura Guid con il valore rappresentato dalla stringa specificata.

public:
 Guid(System::String ^ g);
public Guid (string g);
new Guid : string -> Guid
Public Sub New (g As String)

Parametri

g
String

Stringa contenente un GUID in uno dei seguenti formati ("d" rappresenta una cifra esadecimale, senza distinzione tra maiuscole e minuscole):

32 cifre esadecimali contigue:

dddddddddddddddddddddddddddddddd

-oppure-

Gruppi di 8, 4, 4, 4 e 12 cifre esadecimali con trattini tra i gruppi. L'intero GUID può eventualmente essere racchiuso tra parentesi tonde o graffe:

dddddddd-dddd-dddd-dddd-dddddddddddd

-oppure-

{dddddddd-dddd-dddd-dddd-dddddddddddd}

-oppure-

(dddddddd-dddd-dddd-dddd-dddddddddddd)

-oppure-

Gruppi di 8, 4 e 4 cifre esadecimali e un subset di otto gruppi di 2 cifre esadecimali, con ogni gruppo preceduto da "0x" o "0X" e separato da virgole. Sia l'intero GUID che il sottoinsieme sono racchiusi tra parentesi graffe:

{0xdddddddd, 0xdddd, 0xdddd,{0xdd,0xdd,0xdd,0xdd,0xdd,0xdd,0xdd,0xdd}}

Le parentesi, le virgole e i prefissi "0x" sono obbligatori. Tutti gli spazi eventualmente incorporati vengono ignorati. Gli zeri iniziali di un gruppo vengono ignorati.

Le cifre esadecimali visualizzate in un gruppo sono il numero massimo di cifre esadecimali significative che possono essere visualizzate in tale gruppo. È possibile specificare da 1 al numero di cifre esadecimali visualizzate per un gruppo. Tali cifre vengono considerate come le cifre di base del gruppo.

Eccezioni

Il formato di g non è valido.

Il formato di g non è valido.

Esempio

L'esempio seguente passa ogni stringa elencata nella sezione Osservazioni al Guid(String) costruttore.

string[] guidStrings = { "ca761232ed4211cebacd00aa0057b223",
                         "CA761232-ED42-11CE-BACD-00AA0057B223",
                         "{CA761232-ED42-11CE-BACD-00AA0057B223}",
                         "(CA761232-ED42-11CE-BACD-00AA0057B223)",
                         "{0xCA761232, 0xED42, 0x11CE, {0xBA, 0xCD, 0x00, 0xAA, 0x00, 0x57, 0xB2, 0x23}}" };
foreach (var guidString in guidStrings)
{
    var guid = new Guid(guidString);
    Console.WriteLine($"Original string: {guidString}");
    Console.WriteLine($"Guid:            {guid}");
    Console.WriteLine();
}

// The example displays the following output:
//    Original string: ca761232ed4211cebacd00aa0057b223
//    Guid:            ca761232-ed42-11ce-bacd-00aa0057b223
//
//    Original string: CA761232-ED42-11CE-BACD-00AA0057B223
//    Guid:            ca761232-ed42-11ce-bacd-00aa0057b223
//
//    Original string: {CA761232-ED42-11CE-BACD-00AA0057B223}
//    Guid:            ca761232-ed42-11ce-bacd-00aa0057b223
//
//    Original string: (CA761232-ED42-11CE-BACD-00AA0057B223)
//    Guid:            ca761232-ed42-11ce-bacd-00aa0057b223
//
//    Original string: {0xCA761232, 0xED42, 0x11CE, {0xBA, 0xCD, 0x00, 0xAA, 0x00, 0x57, 0xB2, 0x23}}
//    Guid:            ca761232-ed42-11ce-bacd-00aa0057b223
open System

let guidStrings =
    [ "ca761232ed4211cebacd00aa0057b223"
      "CA761232-ED42-11CE-BACD-00AA0057B223"
      "{CA761232-ED42-11CE-BACD-00AA0057B223}"
      "(CA761232-ED42-11CE-BACD-00AA0057B223)"
      "{0xCA761232, 0xED42, 0x11CE, {0xBA, 0xCD, 0x00, 0xAA, 0x00, 0x57, 0xB2, 0x23}}" ]

for guidString in guidStrings do
    let guid = Guid guidString
    printfn $"Original string: {guidString}"
    printfn $"Guid:            {guid}\n"

// The example displays the following output:
//    Original string: ca761232ed4211cebacd00aa0057b223
//    Guid:            ca761232-ed42-11ce-bacd-00aa0057b223
//
//    Original string: CA761232-ED42-11CE-BACD-00AA0057B223
//    Guid:            ca761232-ed42-11ce-bacd-00aa0057b223
//
//    Original string: {CA761232-ED42-11CE-BACD-00AA0057B223}
//    Guid:            ca761232-ed42-11ce-bacd-00aa0057b223
//
//    Original string: (CA761232-ED42-11CE-BACD-00AA0057B223)
//    Guid:            ca761232-ed42-11ce-bacd-00aa0057b223
//
//    Original string: {0xCA761232, 0xED42, 0x11CE, {0xBA, 0xCD, 0x00, 0xAA, 0x00, 0x57, 0xB2, 0x23}}
//    Guid:            ca761232-ed42-11ce-bacd-00aa0057b223
Module Example
   Public Sub Main()
      Dim guidStrings() As String = { "ca761232ed4211cebacd00aa0057b223",
                                      "CA761232-ED42-11CE-BACD-00AA0057B223", 
                                      "{CA761232-ED42-11CE-BACD-00AA0057B223}", 
                                      "(CA761232-ED42-11CE-BACD-00AA0057B223)", 
                                      "{0xCA761232, 0xED42, 0x11CE, {0xBA, 0xCD, 0x00, 0xAA, 0x00, 0x57, 0xB2, 0x23}}" }
      For Each guidString In guidStrings
         Dim guid As New Guid(guidString)
         Console.WriteLine("Original string: {0}", guidString)
         Console.WriteLine("Guid:            {0}", guid)
         Console.WriteLine()
      Next
   End Sub
End Module
' The example displays the following output:
'    Original string: ca761232ed4211cebacd00aa0057b223
'    Guid:            ca761232-ed42-11ce-bacd-00aa0057b223
'    
'    Original string: CA761232-ED42-11CE-BACD-00AA0057B223
'    Guid:            ca761232-ed42-11ce-bacd-00aa0057b223
'    
'    Original string: {CA761232-ED42-11CE-BACD-00AA0057B223}
'    Guid:            ca761232-ed42-11ce-bacd-00aa0057b223
'    
'    Original string: (CA761232-ED42-11CE-BACD-00AA0057B223)
'    Guid:            ca761232-ed42-11ce-bacd-00aa0057b223
'    
'    Original string: {0xCA761232, 0xED42, 0x11CE, {0xBA, 0xCD, 0x00, 0xAA, 0x00, 0x57, 0xB2, 0x23}}
'    Guid:            ca761232-ed42-11ce-bacd-00aa0057b223

Commenti

Le cifre esadecimali alfabetiche nel g parametro possono essere maiuscole o minuscole. Ad esempio, le stringhe seguenti rappresentano lo stesso GUID:

"ca761232ed4211cebacd00aa0057b223"

"CA761232-ED42-11CE-BACD-00AA0057B223"

"{CA761232-ED42-11CE-BACD-00AA0057B223}"

"(CA761232-ED42-11CE-BACD-00AA0057B223)"

"{0xCA761232, 0xED42, 0x11CE, {0xBA, 0xCD, 0x00, 0xAA, 0x00, 0x57, 0xB2, 0x23}}"

Si applica a

Guid(ReadOnlySpan<Byte>, Boolean)

Origine:
Guid.cs
Origine:
Guid.cs
public:
 Guid(ReadOnlySpan<System::Byte> b, bool bigEndian);
public Guid (ReadOnlySpan<byte> b, bool bigEndian);
new Guid : ReadOnlySpan<byte> * bool -> Guid
Public Sub New (b As ReadOnlySpan(Of Byte), bigEndian As Boolean)

Parametri

bigEndian
Boolean

Si applica a

Guid(Int32, Int16, Int16, Byte[])

Origine:
Guid.cs
Origine:
Guid.cs
Origine:
Guid.cs

Inizializza una nuova istanza della struttura Guid usando gli interi e la matrice di byte specificati.

public:
 Guid(int a, short b, short c, cli::array <System::Byte> ^ d);
public Guid (int a, short b, short c, byte[] d);
new Guid : int * int16 * int16 * byte[] -> Guid
Public Sub New (a As Integer, b As Short, c As Short, d As Byte())

Parametri

a
Int32

Primi 4 byte del GUID.

b
Int16

I 2 byte successivi del GUID.

c
Int16

I 2 byte successivi del GUID.

d
Byte[]

Gli 8 byte rimanenti del GUID.

Eccezioni

Il parametro d non è lungo 8 byte.

Esempio

Guid(1,2,3,new byte[]{0,1,2,3,4,5,6,7}) crea un oggetto Guid che corrisponde a "00000001-0002-0003-0001-020304050607".

Si applica a

Guid(Int32, Int16, Int16, Byte, Byte, Byte, Byte, Byte, Byte, Byte, Byte)

Origine:
Guid.cs
Origine:
Guid.cs
Origine:
Guid.cs

Inizializza una nuova istanza della struttura Guid usando gli interi e i byte specificati.

public:
 Guid(int a, short b, short c, System::Byte d, System::Byte e, System::Byte f, System::Byte g, System::Byte h, System::Byte i, System::Byte j, System::Byte k);
public Guid (int a, short b, short c, byte d, byte e, byte f, byte g, byte h, byte i, byte j, byte k);
new Guid : int * int16 * int16 * byte * byte * byte * byte * byte * byte * byte * byte -> Guid
Public Sub New (a As Integer, b As Short, c As Short, d As Byte, e As Byte, f As Byte, g As Byte, h As Byte, i As Byte, j As Byte, k As Byte)

Parametri

a
Int32

Primi 4 byte del GUID.

b
Int16

I 2 byte successivi del GUID.

c
Int16

I 2 byte successivi del GUID.

d
Byte

Byte successivo del GUID.

e
Byte

Byte successivo del GUID.

f
Byte

Byte successivo del GUID.

g
Byte

Byte successivo del GUID.

h
Byte

Byte successivo del GUID.

i
Byte

Byte successivo del GUID.

j
Byte

Byte successivo del GUID.

k
Byte

Byte successivo del GUID.

Esempio

Nell'esempio seguente viene creato un GUID la cui rappresentazione stringa è "0000000a-000b-000c-0001-020304050607".

var g = new Guid(0xA, 0xB, 0xC,
                  new Byte[] { 0, 1, 2, 3, 4, 5, 6, 7 } );
Console.WriteLine($"{g:B}");

// The example displays the following output:
//        {0000000a-000b-000c-0001-020304050607}
open System

let g = Guid(0xA, 0xBs, 0xCs, [| 0uy..7uy |])
printfn $"{g:B}"

// The example displays the following output:
//        {0000000a-000b-000c-0001-020304050607}
Module Example
   Public Sub Main()
      Dim g As New Guid(&hA, &hB, &hC, 
                        New Byte() { 0, 1, 2, 3, 4, 5, 6, 7 } )
      Console.WriteLine("{0:B}", g)
   End Sub
End Module
' The example displays the following output:
'   {0000000a-000b-000c-0001-020304050607}

Commenti

La specifica di singoli byte in questo modo può essere usata per aggirare le restrizioni dell'ordine di byte (ordine di byte big-endian o little-endian) in determinati tipi di computer.

Si applica a

Guid(UInt32, UInt16, UInt16, Byte, Byte, Byte, Byte, Byte, Byte, Byte, Byte)

Origine:
Guid.cs
Origine:
Guid.cs
Origine:
Guid.cs

Importante

Questa API non è conforme a CLS.

Inizializza una nuova istanza della struttura Guid usando gli interi senza segno e i byte specificati.

public:
 Guid(System::UInt32 a, System::UInt16 b, System::UInt16 c, System::Byte d, System::Byte e, System::Byte f, System::Byte g, System::Byte h, System::Byte i, System::Byte j, System::Byte k);
[System.CLSCompliant(false)]
public Guid (uint a, ushort b, ushort c, byte d, byte e, byte f, byte g, byte h, byte i, byte j, byte k);
[<System.CLSCompliant(false)>]
new Guid : uint32 * uint16 * uint16 * byte * byte * byte * byte * byte * byte * byte * byte -> Guid
Public Sub New (a As UInteger, b As UShort, c As UShort, d As Byte, e As Byte, f As Byte, g As Byte, h As Byte, i As Byte, j As Byte, k As Byte)

Parametri

a
UInt32

Primi 4 byte del GUID.

b
UInt16

I 2 byte successivi del GUID.

c
UInt16

I 2 byte successivi del GUID.

d
Byte

Byte successivo del GUID.

e
Byte

Byte successivo del GUID.

f
Byte

Byte successivo del GUID.

g
Byte

Byte successivo del GUID.

h
Byte

Byte successivo del GUID.

i
Byte

Byte successivo del GUID.

j
Byte

Byte successivo del GUID.

k
Byte

Byte successivo del GUID.

Attributi

Commenti

Se si specificano i byte in questo modo, si evitano problemi di endianness.

Si applica a