Guid Guid Guid Guid Constructors

Definition

Overloads

Guid(Byte[]) Guid(Byte[]) Guid(Byte[]) Guid(Byte[])

Initializes a new instance of the Guid structure by using the specified array of bytes.

Guid(ReadOnlySpan<Byte>) Guid(ReadOnlySpan<Byte>) Guid(ReadOnlySpan<Byte>) Guid(ReadOnlySpan<Byte>)
Guid(String) Guid(String) Guid(String) Guid(String)

Initializes a new instance of the Guid structure by using the value represented by the specified string.

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

Initializes a new instance of the Guid structure by using the specified integers and byte array.

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

Initializes a new instance of the Guid structure by using the specified integers and bytes.

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

Initializes a new instance of the Guid structure by using the specified unsigned integers and bytes.

Guid(Byte[]) Guid(Byte[]) Guid(Byte[]) Guid(Byte[])

Initializes a new instance of the Guid structure by using the specified array of bytes.

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

Parameters

b
Byte[]

A 16-element byte array containing values with which to initialize the GUID.

Exceptions

Guid(ReadOnlySpan<Byte>) Guid(ReadOnlySpan<Byte>) Guid(ReadOnlySpan<Byte>) Guid(ReadOnlySpan<Byte>)

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

Parameters

Guid(String) Guid(String) Guid(String) Guid(String)

Initializes a new instance of the Guid structure by using the value represented by the specified string.

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

Parameters

g
String String String String

A string that contains a GUID in one of the following formats ("d" represents a hexadecimal digit whose case is ignored):

32 contiguous digits:

dddddddddddddddddddddddddddddddd

-or-

Groups of 8, 4, 4, 4, and 12 digits with hyphens between the groups. The entire GUID can optionally be enclosed in matching braces or parentheses:

dddddddd-dddd-dddd-dddd-dddddddddddd

-or-

{dddddddd-dddd-dddd-dddd-dddddddddddd}

-or-

(dddddddd-dddd-dddd-dddd-dddddddddddd)

-or-

Groups of 8, 4, and 4 digits, and a subset of eight groups of 2 digits, with each group prefixed by "0x" or "0X", and separated by commas. The entire GUID, as well as the subset, is enclosed in matching braces:

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

All braces, commas, and "0x" prefixes are required. All embedded spaces are ignored. All leading zeros in a group are ignored.

The digits shown in a group are the maximum number of meaningful digits that can appear in that group. You can specify from 1 to the number of digits shown for a group. The specified digits are assumed to be the low-order digits of the group.

Exceptions

Examples

The following example passes each string listed in the Remarks section to the Guid(String) constructor.

using System;

public class Example
{
   public static void Main()
   {
      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) {
         Guid guid = new Guid(guidString);
         Console.WriteLine("Original string: {0}", guidString);
         Console.WriteLine("Guid:            {0}", 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
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

Remarks

The alphabetic hexadecimal digits in the g parameter can be uppercase or lowercase. For example, the following strings represent the same 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}}"

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

Initializes a new instance of the Guid structure by using the specified integers and byte array.

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())

Parameters

a
Int32 Int32 Int32 Int32

The first 4 bytes of the GUID.

b
Int16 Int16 Int16 Int16

The next 2 bytes of the GUID.

c
Int16 Int16 Int16 Int16

The next 2 bytes of the GUID.

d
Byte[]

The remaining 8 bytes of the GUID.

Exceptions

Examples

Guid(1,2,3,new byte[]{0,1,2,3,4,5,6,7}) creates a Guid that corresponds to "00000001-0002-0003-0001-020304050607".

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

Initializes a new instance of the Guid structure by using the specified integers and bytes.

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)

Parameters

a
Int32 Int32 Int32 Int32

The first 4 bytes of the GUID.

b
Int16 Int16 Int16 Int16

The next 2 bytes of the GUID.

c
Int16 Int16 Int16 Int16

The next 2 bytes of the GUID.

d
Byte Byte Byte Byte

The next byte of the GUID.

e
Byte Byte Byte Byte

The next byte of the GUID.

f
Byte Byte Byte Byte

The next byte of the GUID.

g
Byte Byte Byte Byte

The next byte of the GUID.

h
Byte Byte Byte Byte

The next byte of the GUID.

i
Byte Byte Byte Byte

The next byte of the GUID.

j
Byte Byte Byte Byte

The next byte of the GUID.

k
Byte Byte Byte Byte

The next byte of the GUID.

Examples

The following example creates a GUID whose string representation is "0000000a-000b-000c-0001-020304050607".

using System;

public class Example
{
   public static void Main()
   {
      Guid g = new Guid(0xA, 0xB, 0xC, 
                        new Byte[] { 0, 1, 2, 3, 4, 5, 6, 7 } );
      Console.WriteLine("{0:B}", g);
   }
}
// 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}

Remarks

Specifying individual bytes in this manner can be used to circumvent byte order restrictions (big-endian or little-endian byte order) on particular types of computers.

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

Important

This API is not CLS-compliant.

Initializes a new instance of the Guid structure by using the specified unsigned integers and bytes.

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);
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)

Parameters

a
UInt32 UInt32 UInt32 UInt32

The first 4 bytes of the GUID.

b
UInt16 UInt16 UInt16 UInt16

The next 2 bytes of the GUID.

c
UInt16 UInt16 UInt16 UInt16

The next 2 bytes of the GUID.

d
Byte Byte Byte Byte

The next byte of the GUID.

e
Byte Byte Byte Byte

The next byte of the GUID.

f
Byte Byte Byte Byte

The next byte of the GUID.

g
Byte Byte Byte Byte

The next byte of the GUID.

h
Byte Byte Byte Byte

The next byte of the GUID.

i
Byte Byte Byte Byte

The next byte of the GUID.

j
Byte Byte Byte Byte

The next byte of the GUID.

k
Byte Byte Byte Byte

The next byte of the GUID.

Examples

Guid(0xa,0xb,0xc,0,1,2,3,4,5,6,7) creates a Guid that corresponds to "0000000a-000b-000c-0001-020304050607".

Remarks

Specifying the bytes in this manner avoids endianness issues.

Applies to