首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >为什么没有Guid.IsNullOrEmpty()方法

为什么没有Guid.IsNullOrEmpty()方法
EN

Stack Overflow用户
提问于 2012-03-23 18:27:14
回答 5查看 91.3K关注 0票数 109

这让我想知道为什么.NET中的Guid没有IsNullOrEmpty()方法(其中空表示全零)

在编写REST API时,我需要在我的ASP.NET MVC代码中的几个地方使用它。

或者我错过了什么,因为在互联网上没有人提出同样的要求?

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2012-03-23 18:29:40

Guid是一个value type,所以Guid类型的变量一开始就不能为null。如果你想知道它是否与空的guid相同,你可以使用:

代码语言:javascript
复制
if (guid == Guid.Empty)
票数 245
EN

Stack Overflow用户

发布于 2012-03-23 18:29:56

首先,Guid是不可空的。你可以检查:

代码语言:javascript
复制
myGuid == default(Guid)

相当于:

代码语言:javascript
复制
myGuid == Guid.Empty
票数 30
EN

Stack Overflow用户

发布于 2012-03-23 18:33:01

您可以对Guid创建一个扩展方法,以添加IsEmpty功能:

代码语言:javascript
复制
public static class GuidEx
{
    public static bool IsEmpty(this Guid guid)
    {
        return guid == Guid.Empty;
    }
}

public class MyClass
{
    public void Foo()
    {
        Guid g;
        bool b;

        b = g.IsEmpty(); // true

        g = Guid.NewGuid();

        b = g.IsEmpty; // false

        b = Guid.Empty.IsEmpty(); // true
    }
}
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9837602

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档