Guid的默认值是多少?

时间:2015-06-22 10:29:46

标签: c# .net guid default-value

int的默认值为0,string的默认值为""对boolean而言,这是错误的。有人可以澄清一下guid的默认值是什么吗?

6 个答案:

答案 0 :(得分:86)

您可以使用这些方法获取空guid。结果将是一个guid,其所有数字为0"" 00000000-0000-0000-0000-000000000000"。

new Guid()

default(Guid)

Guid.Empty

答案 1 :(得分:32)

您可以使用Guid.Empty。它是Guid结构的read-only instance,其值为00000000-0000-0000-0000-000000000000

您也可以使用这些

var g = new Guid();
var g = default(Guid);

请注意不要使用Guid.NewGuid(),因为它会生成新的Guid。

使用上面的一个选项,您和您的团队认为它更具可读性并坚持下去。不要在代码中混合使用不同的选项。我认为Guid.Empty是最好的,因为new Guid()可能会让我们认为它正在生成一个新的guid,有些人可能不知道default(Guid)的价值是什么。

答案 2 :(得分:14)

GUID的默认值为空。 (例如:00000000-0000-0000-0000-000000000000)

可以使用Guid.Empty()new Guid()

调用此方法

如果您想要新的GUID,请使用Guid.NewGuid()

答案 3 :(得分:6)

要扩展上面的答案,您不能在方法,索引器或委托定义中将Guid.Empty的Guid默认值用作optional argument,因为它会给您编译时错误。请改用default(Guid)new Guid()

答案 4 :(得分:1)

Guid的默认值为 00000000-0000-0000-0000-000000000000

您可以使用以下给定的语句进行验证:

default(Guid);

答案 5 :(得分:-1)

使用课程创建空Guid 新Guid ...

Guid的默认值为 00000000-0000-0000-0000-000000000000

public class clsGuid  ---This is class Name
{
    public Guid MyGuid { get; set; }
}

static void Main(string[] args)
        {
            clsGuid cs = new clsGuid();   
            Console.WriteLine(cs.MyGuid); --this will give empty Guid  "00000000-0000-0000-0000-000000000000"

            cs.MyGuid = new Guid();
            Console.WriteLine(cs.MyGuid); ----this will also give empty Guid  "00000000-0000-0000-0000-000000000000"

            cs.MyGuid = Guid.NewGuid();
            Console.WriteLine(cs.MyGuid); --this way, it will give new guid  "d94828f8-7fa0-4dd0-bf91-49d81d5646af"

            Console.ReadKey(); --this line holding the output screen in console application...
        }