@Ante: Se você tem a classe Guid, então você tem o método NewGuid.
Guffa
61
Apenas uma rápida explicação de por que você precisa chamar NewGuid em vez de usar o construtor padrão ... Em .NET todas as estruturas (tipos de valor como int, decimal, Guid, DateTime, etc) devem ter um construtor sem parâmetros padrão que inicializa todos os os campos com seus valores padrão. No caso do Guid, os bytes que compõem o Guid são todos zero. Em vez de fazer um caso especial para o Guid ou torná-lo uma classe, eles usam o método NewGuid para gerar um novo Guid "aleatório".
"Não consigo usar" - o que acontece quando você tenta usá-lo? Digite-o manualmente (talvez haja um problema com o seu intellisense) e tente compilar - você obtém erros de compilação?
Matt Brindley
O que você quer dizer quando diz que "não pode usar"? Se você digitar Guid x = System.Guid.NewGuid () e compilar, você obtém um erro? Ou você não gosta do valor que está obtendo por x?
DOK
LOL sim, que o algoritmo Guid às vezes precisa de uma nova reinicialização. Suspiro.
Josh
4
something = new Guid()é igual something = Guid.Empty.
Respostas:
Você deveria usar
Guid.NewGuid()
fonte
Apenas uma rápida explicação de por que você precisa chamar NewGuid em vez de usar o construtor padrão ... Em .NET todas as estruturas (tipos de valor como int, decimal, Guid, DateTime, etc) devem ter um construtor sem parâmetros padrão que inicializa todos os os campos com seus valores padrão. No caso do Guid, os bytes que compõem o Guid são todos zero. Em vez de fazer um caso especial para o Guid ou torná-lo uma classe, eles usam o método NewGuid para gerar um novo Guid "aleatório".
fonte
Está dentro
System.Guid.
Para criar dinamicamente um GUID no código:
Para ver seu valor:
fonte
something = new Guid()
é igualsomething = Guid.Empty
.Use ao
Guid.NewGuid();
invésfonte
fonte