[.net] 什麼是GUID的字符串長度?


Answers

36,並且GUID將只使用0-9A-F(十六進制!)。

12345678-1234-1234-1234-123456789012

這是任何GUID中的36個字符 - 它們的長度不變。 您可以here閱讀更多有關GUID錯綜複雜的內容。

如果你想存儲大括號,你將需要更多的長度。

注意:36是中間有破折號的字符串長度。 它們實際上是16字節的數字。

Question

我想在SQL中創建一個應該包含N'guid'的varchar列,而guid是由.NET( Guid.NewGuid ) - 類System.Guid生成的GUID。

什麼是我應該期望從一個GUID varchar的長度? 它是一個靜態長度嗎?

我應該使用nvarchar (GUID是否會使用Unicode字符)?

varchar(Guid.Length)

PS。 我不想使用SQL行guid數據類型。 我只是問什麼是Guid.MaxLength




我相信GUID被限制為16個字節的長度(或者對於ASCII十六進制等價的32個字節)。




22個字節,如果你這樣做:

System.Guid guid = System.Guid.NewGuid();
byte[] guidbytes = guid.ToByteArray();
string uuid = Convert.ToBase64String(guidbytes).Trim('=');