📜  在 c# 中生成 UUID(1)

📅  最后修改于: 2023-12-03 15:23:07.290000             🧑  作者: Mango

在 C# 中生成 UUID(通用唯一标识符)

UUID(通用唯一标识符)是一种能够帮助程序员生成唯一识别码的技术。在 C# 中,我们可以很简单地生成 UUID。在本文中,我将介绍如何在 C# 中使用不同的方式生成 UUID。

使用 .Net Framework 内置函数生成 UUID

在 .Net Framework 中已经内置了 System.Guid 类,它可以生成 UUID。Guid 是全球唯一标识符的缩写,GUID 是 Microsoft 定义的一种 UUID 实现。以下是生成 UUID 的示例:

using System;

class Program
{
    static void Main()
    {
        Guid guid = Guid.NewGuid();
        Console.WriteLine(guid);
    }
}

以上代码将生成一个随机的 UUID 并输出到控制台。注意,Guid 在内部使用了 MAC 地址、时间戳等来生成 UUID,因此不保证完全唯一。

使用第三方库生成 UUID

使用第三方库可以更灵活地生成 UUID,以下是使用 UUID.net 库实现的示例:

using NetEscapades.Extensions;
using System;

class Program
{
    static void Main()
    {
        Guid guid = Guid.NewGuid();
        var base64 = guid.ToBase64UrlString();
        Console.WriteLine(base64);
    }
}

以上代码将生成一个随机的 UUID 并使用 Base64url 编码方式输出。ToBase64UrlStringNetEscapades.Extensions 库中添加的扩展方法,可以将 UUID 转换成 Base64url 编码的字符串。

使用类库生成 UUID

我们也可以使用类库,在类中添加方法,以生成 UUID。以下是使用类库生成 UUID 的示例:

using System;

namespace MyLibrary
{
    public static class MyUuidGenerator
    {
        public static string GenerateUuid()
        {
            Guid guid = Guid.NewGuid();
            return guid.ToString("N");
        }
    }
}

class Program
{
    static void Main()
    {
        string uuid = MyLibrary.MyUuidGenerator.GenerateUuid();
        Console.WriteLine(uuid);
    }
}

以上代码将生成一个随机的 UUID 并输出到控制台。在 MyUuidGenerator 类中,我们定义了一个 GenerateUuid 方法,以生成 UUID。在 ToString 方法的参数中,我们使用了格式化字符串 N,它会输出 32 位没有分隔符的 UUID。

结论

C# 中生成 UUID 很简单,我们可以使用内置函数、第三方库或自己的类库。选择适合自己的方法,以生成不同类型的 UUID。