Generuję identyfikator GUID przy użyciu następującej instrukcji w moim kodzie
byte[ ] keyBytes = Encoding.UTF8.GetBytes( Guid.NewGuid( ).ToString( ).Substring( 0, 12 ) );
Ale gdy generowany jest identyfikator GUID, stwierdzam, że zawiera on także znak łącznika. Jak mam generować identyfikator GUID zawierający tylko litery (wielkie i małe litery) i cyfry? Nie chcę łącznika. Czy ktoś może podsunąć taki pomysł?
1 odpowiedź
Zauważ, że mówisz o (kanonicznej) reprezentacji ciągu Guid. Sam Guid jest w rzeczywistości 128-bitową liczbą całkowitą.
Możesz użyć specyfikatora „N” z przeciążeniem Guid.ToString (String).
Guid.NewGuid().ToString("N");
Domyślnie litery są małe. Identyfikator Guid zawierający tylko wielkie litery można osiągnąć tylko poprzez ręczne przekonwertowanie ich na wielkie litery, na przykład:
Guid.NewGuid().ToString("N").ToUpper();
Przewodnik zawierający tylko literę lub cyfry nie ma sensu. Reprezentacja ciągu prowadzącego jest szesnastkowa i dlatego zawsze (najprawdopodobniej) będzie zawierać oba te elementy.