Evet, uzunluk sabittir ve standart toString biçimi kullandığınızda evet orta numarası her zaman 4'tür. (neredeyse her pencere olmadığı bir UUID olarak da bilinir) GUID bit bazıları ben "4 olduğunu eklemek gerekir
http://en.wikipedia.org/wiki/Uuid
DÜZENLEME .. vb versiyonu gibi şeyleri belirtmek için sabitlenir "yalnızca, .NET'te uygulanan Guid.NewGuid algoritmasına göre oluşturulan Kılavuzlar için geçerlidir. Herhangi bir keyfi bayt [16] almanızı ve bunu Guid'e dönüştürmenizi engelleyecek hiçbir şey yoktur. Yani, algoritmanın şu anki uygulanabilmesi için sadece 4'lük bir banka olabilirsiniz. Net. Başka bir kaynaktan Guids alıyorsanız, 4 üzerinden bankaya sahip olamazsınız. Net veya olasılıkla pencereler için bir güncelleştirme (.Net'in kendi veya Windows 'jeneratörünü kullanıyorsa) GUID
'un sabit sayılarını değiştirebilir eg (Parametre olmadan) documentation on Guid.ToString itibaren
var rand = new Random();
var byteArray = new byte[16];
rand.NextBytes(byteArray);
var g = new Guid(byteArray);
'a dönmesinin nedeni budur. Bu yalnızca GUID ile ilgili söylenenlere güvenebilirsiniz. Eğer spec sabit uzunlukta bir dize göstergesinden bahsetmiyorsa, ona güvenmeyin. –
@Keith - Hem MS hem de OSF ile 8-4-4-4-12 formatı standarttır. MS docs Guid diyor.ToString() "Bu Guid'in değeri aşağıdaki gibi biçimlendirilmiştir: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" –
Tamam, o zaman iyisiniz. –