Guid Конструкторы

Определение

Инициализирует новый экземпляр структуры Guid.

Перегрузки

Guid(Byte[])

Инициализирует новый экземпляр структуры Guid с использованием указанного массива байтов.

Guid(ReadOnlySpan<Byte>)

Инициализирует новый экземпляр структуры Guid с использованием значения, представленного заданным диапазоном байтов только для чтения.

Guid(String)

Инициализирует новый экземпляр структуры Guid с использованием значения, представленного заданной строкой.

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

Инициализирует новый экземпляр структуры Guid с использованием заданных целых чисел и массива байтов.

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

Инициализирует новый экземпляр структуры Guid с использованием заданных целых чисел и байтов.

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

Инициализирует новый экземпляр структуры Guid с использованием указанных целых чисел без знака и байтов.

Guid(Byte[])

Инициализирует новый экземпляр структуры Guid с использованием указанного массива байтов.

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

Параметры

b
Byte[]

Массив из 16 байтов содержит значения для инициализации GUID.

Исключения

b имеет значение null.

Размер b не равен 16 байтам.

Применяется к

Guid(ReadOnlySpan<Byte>)

Инициализирует новый экземпляр структуры Guid с использованием значения, представленного заданным диапазоном байтов только для чтения.

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

Параметры

b
ReadOnlySpan<Byte>

Доступный только для чтения диапазон, содержащий байты, представляющие GUID. Диапазон должен иметь длину ровно 16 байт.

Исключения

Диапазон должен иметь длину ровно 16 байт.

Применяется к

Guid(String)

Инициализирует новый экземпляр структуры Guid с использованием значения, представленного заданной строкой.

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

Параметры

g
String

Строка, содержащая GUID в одном из указанных ниже форматов (здесь "d" обозначает шестнадцатеричную цифру, регистр которой игнорируется).

32 смежных шестнадцатеричных цифр:

dddddddddddddddddddddddddddddddd

-или-

Группы из 8, 4, 4, 4 и 12 шестнадцатеричных цифр с дефисами между группами. GUID целиком может быть заключен в фигурные или круглые скобки:

dddddddd-dddd-dddd-dddd-dddddddddddd

-или-

{dddddddd-dddd-dddd-dddd-dddddddddddd}

-или-

(dddddddd-dddd-dddd-dddd-dddddddddddd)

-или-

Группы из 8, 4 и 4 шестнадцатеричных цифр и подмножество из восьми групп из 2 шестнадцатеричных цифр, при этом каждая группа имеет префикс "0x" или "0X" и разделена запятыми. Весь GUID, так же как и подмножество, заключается в фигурные скобки:

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

Все фигурные скобки, запятые и префиксы "0x" необходимы. Все внутренние пробелы игнорируются. Все нули в начале группы игнорируются.

Шестнадцатеричные цифры, отображаемые в группе, — это максимальное число значимых шестнадцатеричных цифр, которые могут отображаться в этой группе. Можно указать от 1 до числа шестнадцатеричных цифр, отображаемых для группы. Предполагается, что задаваемые цифры являются младшими цифрами группы.

Исключения

g имеет значение null.

Недопустимый формат g.

Недопустимый формат g.

Примеры

В следующем примере каждая строка, указанная в разделе "Примечания", передается конструктору Guid(String) .

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

Комментарии

Шестнадцатеричные цифры в параметре g могут быть прописными или строчными. Например, следующие строки представляют один и тот же 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 с использованием заданных целых чисел и массива байтов.

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

Параметры

a
Int32

Первые 4 байта GUID.

b
Int16

Следующие 2 байта GUID.

c
Int16

Следующие 2 байта GUID.

d
Byte[]

Оставшиеся 8 байтов GUID.

Исключения

d имеет значение null.

Размер d не равен 8 байтам.

Примеры

Guid(1,2,3,new byte[]{0,1,2,3,4,5,6,7}) создает объект Guid , соответствующий "0000001-0002-0003-0001-020304050607".

Применяется к

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

Инициализирует новый экземпляр структуры Guid с использованием заданных целых чисел и байтов.

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)

Параметры

a
Int32

Первые 4 байта GUID.

b
Int16

Следующие 2 байта GUID.

c
Int16

Следующие 2 байта GUID.

d
Byte

Следующий байт GUID.

e
Byte

Следующий байт GUID.

f
Byte

Следующий байт GUID.

g
Byte

Следующий байт GUID.

h
Byte

Следующий байт GUID.

i
Byte

Следующий байт GUID.

j
Byte

Следующий байт GUID.

k
Byte

Следующий байт GUID.

Примеры

В следующем примере создается GUID, строковое представление которого равно "000000a-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}

Комментарии

Указание отдельных байтов таким образом можно использовать для обхода ограничений порядка байтов (порядка байтов большого или маленького байта) на определенных типах компьютеров.

Применяется к

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

Важно!

Этот API несовместим с CLS.

Инициализирует новый экземпляр структуры Guid с использованием указанных целых чисел без знака и байтов.

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)

Параметры

a
UInt32

Первые 4 байта GUID.

b
UInt16

Следующие 2 байта GUID.

c
UInt16

Следующие 2 байта GUID.

d
Byte

Следующий байт GUID.

e
Byte

Следующий байт GUID.

f
Byte

Следующий байт GUID.

g
Byte

Следующий байт GUID.

h
Byte

Следующий байт GUID.

i
Byte

Следующий байт GUID.

j
Byte

Следующий байт GUID.

k
Byte

Следующий байт GUID.

Атрибуты

Комментарии

Указание байтов таким образом позволяет избежать проблем с концевостью.

Применяется к