Как использовать GUID в C#?


Этот Код:

Something = new Guid() 

возвращается:

00000000-0000-0000-0000-000000000000

все время и я не могу сказать, почему? Так почему же?

5 85

5 ответов:

вы должны использовать Guid.NewGuid()

просто краткое объяснение того, почему вам нужно вызвать NewGuid, а не использовать конструктор по умолчанию... В .NET все структуры (типы значений, такие как int, decimal, Guid, DateTime и т. д.) должны иметь конструктор без параметров по умолчанию, который инициализирует все поля до их значения по умолчанию. В случае Guid все байты, составляющие Guid, равны нулю. Вместо того, чтобы создавать специальный случай для Guid или делать его классом, они используют метод NewGuid для создания нового "случайного" Guid.

Это System.Guid.

для динамического создания GUID в коде:

Guid messageId = System.Guid.NewGuid();

чтобы увидеть его значение:

string x = messageId.ToString();
 Guid g1 = Guid.NewGuid();

 string s1;
 s1 = g1.ToString();
 Console.WriteLine("{0}",s1);
 Console.ReadKey();

something = new Guid() равна something = Guid.Empty.

использовать Guid.NewGuid(); вместо