【发布时间】:2010-10-28 14:08:35
【问题描述】:
此代码:
Something = new Guid()
正在返回:
00000000-0000-0000-0000-000000000000
一直都是,我不知道为什么?那么,为什么?
【问题讨论】:
此代码:
Something = new Guid()
正在返回:
00000000-0000-0000-0000-000000000000
一直都是,我不知道为什么?那么,为什么?
【问题讨论】:
你应该使用Guid.NewGuid()
【讨论】:
简单解释一下为什么需要调用 NewGuid 而不是使用默认构造函数...在 .NET 中,所有结构(值类型,如 int、decimal、Guid、DateTime 等)都必须具有默认的无参数构造函数将所有字段初始化为其默认值。在 Guid 的情况下,组成 Guid 的字节全为零。他们没有为 Guid 制作一个特例或将其变成一个类,而是使用 NewGuid 方法生成一个新的“随机”Guid。
【讨论】:
在System.Guid.
在代码中动态创建 GUID:
Guid messageId = System.Guid.NewGuid();
查看它的价值:
string x = messageId.ToString();
【讨论】:
something = new Guid() 等于 something = Guid.Empty。
改用Guid.NewGuid();
【讨论】:
Guid g1 = Guid.NewGuid();
string s1;
s1 = g1.ToString();
Console.WriteLine("{0}",s1);
Console.ReadKey();
【讨论】: