【问题标题】:myVariable(int) == 0 same as myVariable(Guid) == Guid.EmptymyVariable(int) == 0 与 myVariable(Guid) == Guid.Empty 相同
【发布时间】:2011-05-03 13:19:53
【问题描述】:

我最近将一堆表 PK 从 int 转换为 uniqueidentifier。现在在我的代码中,我正在替换某些检查,如下所示:

if (planDiagnosisID != 0)

if (planDiagnosisID != Guid.Empty)

其中 planDiagnosisID 是第一个中的 int 和第二个中的 Guid

这准确吗?

【问题讨论】:

  • 是的。我不相信 UniqueIdentifier 会生成零 GUID,因为零值通常是为特殊键值保留的。

标签: c# .net guid uniqueidentifier equality


【解决方案1】:

是的,这是正确的。 Guid.Empty 是Guid 的默认值。是值类型,所以不能是null

或者在代码中

default(Guid) == Guid.Empty

就像

default(int) == 0

【讨论】:

    猜你喜欢
    • 2012-02-18
    • 2022-07-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-02-11
    • 1970-01-01
    • 2015-03-09
    相关资源
    最近更新 更多