Guid 的默认值是什么?

int的默认值为0,string的默认值为“”,boolean的默认值为 false。有没有人能解释一下 guid的默认值是多少?

163608 次浏览

GUID 的默认值为空(例如: 0000000-0000-0000-0000-0000-0000000000000000000000000000000000000000000000000000000000000000000000

这可以使用 Guid.Emptynew Guid()调用

如果需要新的 GUID,可以使用 Guid.NewGuid()

可以使用 Guid.Empty。它是 Guid 结构的 只读实例,值为 00000000-0000-0000-0000-000000000000

你也可以用这些来代替

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

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

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

可以使用这些方法获得空 guid。结果将是一个所有数字都为0的 guid-“ 00000000-0000-0000-0000-000000000000”。

new Guid()


default(Guid)


Guid.Empty

正如 Use Keim 在评论中指出的那样,defaultdefault(Guid)的缩写

要扩展上面的答案,您不能在方法、索引器或委托定义中使用带 Guid.Empty的 Guid 默认值作为 可选参数,因为它会给您带来编译时错误。使用 default(Guid)new Guid()代替。

可以使用类创建 空虚的家伙新吉德

Guid 的默认值是 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000

public class clsGuid  // This is a 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 a new Guid (eg. "d94828f8-7fa0-4dd0-bf91-49d81d5646af")


Console.ReadKey(); // This line holds the output screen in a console application
}