GUID:全局唯一标识符 (Globally Unique Identifier,共32位,其中每个 x 是 0-9 或 a-f 范围内的一个十六进制的数字)
格 式:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
例 如:0d9d526e-77c4-46bc-9955-6c0e95bc176e
为什么要使用 GUID ?
GUID主要用于在拥有多个节点、多台计算机的网络或系统中,分配必须具有唯一性的标识符。在理想情况下,任何计算机和计算机集群都不会生成两个相同的GUID。它的总数达到了 2^128 (3.4×10^38)个,所以随机生成两个相同GUID的可能性非常小,但并不为0。所以,用于生成GUID的算法通常都加入了非随机的参数(如时间),以保证这种重复的情况不会发生。
在 Windows 平台上,GUID 广泛应用于微软的产品中,用于标识如注册表项、类及接口标识、数据库、系统目录等对象。
var cdk = System.Guid.NewGuid();//生成32位唯一标识:8-4-4-4-12
Console.WriteLine(cdk.ToString("N")); // xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Console.WriteLine(cdk.ToString("D")); // xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
Console.WriteLine(cdk.ToString("B")); // {xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx}
Console.WriteLine(cdk.ToString("P")); // (xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx)
Console.WriteLine(cdk); // 默认D格式化
string str = "0d9d526e77c446bc99556c0e95bc176e";
Console.WriteLine(new Guid(str)); // 0d9d526e-77c4-46bc-9955-6c0e95bc176e
Console.WriteLine(Guid.Parse(str)); // 0d9d526e-77c4-46bc-9955-6c0e95bc176e