.NET 幫助

C# 新的 GUID(如何為開發者運作)

發佈 2024年10月23日
分享:

NewGuid() 方法在 Guid 類別中,通常用於創建全域唯一識別碼。(GUID). GUID 是一個 128 位元的整數,可以在所有計算機和網路中用來獨特地識別資訊,而不會有重複的風險。 本文將提供有關如何使用GUID的深入指南。(全域唯一識別碼)在 C# 中,專注於實際用途、範例和代碼片段。 我們將探討IronPDF 庫以及。

什麼是 GUID?

全球唯一識別碼 (GUID)(全域唯一識別碼)是軟體開發中使用的唯一識別碼。 在 .NET 框架中,GUID 在 System 命名空间中表示為 Guid 結構體。 GUIDs 通常用作資料庫中的主鍵,以及在需要跨系統唯一標識符的其他系統中用作其他用途。

在 C# 中生成 GUID

要在 C# 中生成新的 GUID,可以使用 Guid.NewGuid()功能被使用。 此方法創建一個新的 GUID 物件實例,並確保每個產生的 GUID 都是唯一的。 在內部,GUID使用隨機數產生器生成,以確保沒有兩個GUID具有相同的值。

以下是生成新 GUID 的簡單程式碼範例:

using System;
class Program
{
    static void Main()
    {
        Guid newGuid = Guid.NewGuid();
        Console.WriteLine(newGuid);
    }
}
using System;
class Program
{
    static void Main()
    {
        Guid newGuid = Guid.NewGuid();
        Console.WriteLine(newGuid);
    }
}
Imports System
Friend Class Program
	Shared Sub Main()
		Dim newGuid As Guid = Guid.NewGuid()
		Console.WriteLine(newGuid)
	End Sub
End Class
VB   C#

在此程式碼中,Guid.NewGuid()方法使用內部的隨機數生成器創建一個新的 GUID,並使用 Console.WriteLine 將新生成的 GUID 輸出到控制台。

GUID 結構和格式

GUID由32個十六進位數字組成,通常以8-4-4-4-12的格式顯示。(e.g., e02fd0e4-00fd-090A-ca30-0d00a0038ba0). 轉換為字串時使用 ToString()方法,GUID 以這種格式表示。 這種表示方式使得在基於文本的格式中儲存 GUIDs 變得容易,例如 JSON、XML 或資料庫。

以下代碼範例顯示如何將 GUID 轉換為字串:

Guid newGuid = Guid.NewGuid();
string guidString = newGuid.ToString();
Console.WriteLine(guidString);
Guid newGuid = Guid.NewGuid();
string guidString = newGuid.ToString();
Console.WriteLine(guidString);
Dim newGuid As Guid = Guid.NewGuid()
Dim guidString As String = newGuid.ToString()
Console.WriteLine(guidString)
VB   C#

此程式碼將 GUID 轉換為字串並輸出。

解析 GUID 字串

有時候,您可能需要將字串解析回 GUID 物件。 這是使用 Guid.Parse 完成的。()方法。 如果字串的格式正確,將會解析為 GUID 實例。 如果格式不正確,將引發一個異常。

以下是一個程式碼範例:

string guidString = "e02fd0e4-00fd-090A-ca30-0d00a0038ba0";
Guid parsedGuid = Guid.Parse(guidString);
Console.WriteLine(parsedGuid);
string guidString = "e02fd0e4-00fd-090A-ca30-0d00a0038ba0";
Guid parsedGuid = Guid.Parse(guidString);
Console.WriteLine(parsedGuid);
Dim guidString As String = "e02fd0e4-00fd-090A-ca30-0d00a0038ba0"
Dim parsedGuid As Guid = Guid.Parse(guidString)
Console.WriteLine(parsedGuid)
VB   C#

在此代码中,Guid.Parse()方法將字串轉換回 GUID 物件。

比較兩個GUID

可以比較 GUID 來判斷它們是否相等。 Guid 結構實現了相等運算符(==),因此您可以直接比較兩個GUID物件。

以下是一個範例:

Guid guid1 = Guid.NewGuid();
Guid guid2 = Guid.NewGuid();
if (guid1 == guid2)
{
    Console.WriteLine("The two GUIDs are the same.");
}
else
{
    Console.WriteLine("The two GUIDs are different.");
}
Guid guid1 = Guid.NewGuid();
Guid guid2 = Guid.NewGuid();
if (guid1 == guid2)
{
    Console.WriteLine("The two GUIDs are the same.");
}
else
{
    Console.WriteLine("The two GUIDs are different.");
}
Dim guid1 As Guid = Guid.NewGuid()
Dim guid2 As Guid = Guid.NewGuid()
If guid1 = guid2 Then
	Console.WriteLine("The two GUIDs are the same.")
Else
	Console.WriteLine("The two GUIDs are different.")
End If
VB   C#

在此代碼中,對兩個GUID進行比較。 由 Guid.NewGuid 生成的每個 GUID()是唯一的,結果通常會是「這兩個 GUID 不同。」

使用 GUID 常見錯誤

  1. 假設 GUID 是順序的: GUID 是隨機的,NewGuid()方法不產生連續的值。 因此,您不應假設 GUID 會維持任何排序。

  2. 字串比較而非 GUID 比較: 將 GUID 作為字串進行比較可能效率不高。 總是直接比較 GUID 物件,而不是將它們轉換為字串並比較字串值。

  3. 在大型資料庫中使用 GUIDs 而不建立索引: 若未正確建立索引,GUIDs 可能會較大,並影響大型資料庫的效能。 確保將 GUID 欄作為主鍵使用時,為它們建立索引。

在 .NET Core 及 Framework 中的 GUIDs

GUID 支援於 .NET Framework 和 .NET Core。 Guid類別的使用在不同版本的.NET平台上保持一致。 因此,使用任何版本 .NET 的開發人員可以輕鬆地使用 Guid.NewGuid 生成 GUID。()方法。

GUID vs UUID

GUID類似於UUID。(通用唯一識別碼),這些術語通常可以互換使用。 雖然規範中有一些小的差異,但它們的作用都是生成唯一標識符。

使用 IronPDF 與 GUID

C# 新 GUID(開發者如何使用):圖 1 - IronPDF

IronPDF 是一個 PDF 庫,用於從 HTML 生成 PDF以及在 .NET 應用程式中的其他 PDF 操作。 您可以將 IronPDF 與 GUID 結合使用,以在需要為 PDF 文件生成唯一檔名時使用。 這確保每個生成的 PDF 都有一個唯一的名稱,防止任何文件覆蓋或命名衝突。 這裡有一個使用 IronPDF 和新 GUID 的簡單示例:

using System;
using IronPdf;
class Program
{
    static void Main()
    {
        // Generate a new GUID object for the PDF filename
        Guid pdfId = Guid.NewGuid();
        string filename = $"{pdfId}.pdf";
        // Create a PDF document using IronPDF
        var renderer = new ChromePdfRenderer();
        var pdfDocument = renderer.RenderHtmlAsPdf("<h1>Hello, World!</h1>");
        // Save the PDF with the unique filename
        pdfDocument.SaveAs(filename);
        Console.WriteLine($"PDF saved as: {filename}");
    }
}
using System;
using IronPdf;
class Program
{
    static void Main()
    {
        // Generate a new GUID object for the PDF filename
        Guid pdfId = Guid.NewGuid();
        string filename = $"{pdfId}.pdf";
        // Create a PDF document using IronPDF
        var renderer = new ChromePdfRenderer();
        var pdfDocument = renderer.RenderHtmlAsPdf("<h1>Hello, World!</h1>");
        // Save the PDF with the unique filename
        pdfDocument.SaveAs(filename);
        Console.WriteLine($"PDF saved as: {filename}");
    }
}
Imports System
Imports IronPdf
Friend Class Program
	Shared Sub Main()
		' Generate a new GUID object for the PDF filename
		Dim pdfId As Guid = Guid.NewGuid()
		Dim filename As String = $"{pdfId}.pdf"
		' Create a PDF document using IronPDF
		Dim renderer = New ChromePdfRenderer()
		Dim pdfDocument = renderer.RenderHtmlAsPdf("<h1>Hello, World!</h1>")
		' Save the PDF with the unique filename
		pdfDocument.SaveAs(filename)
		Console.WriteLine($"PDF saved as: {filename}")
	End Sub
End Class
VB   C#

在 Visual Studio 中運行上述程式碼並觀察輸出。

C# 新 GUID(開發人員如何使用):圖 2 - Visual Studio 控制台輸出

我們使用 Guid.NewGuid()為每個 PDF 文件創建一個唯一的隨機 GUID。這個 GUID 轉換為字符串並用作檔名。

結論

C# 新 GUID(對開發人員的運作方式):圖 3 - 授權

在本文中,我們已經介紹了 C# 中 GUID 的基礎知識。 您已看到如何生成新的 GUID、比較它們、從字串解析它們,並在像資料庫這樣的實際情境中使用它們。 The Guid.NewGuid()該方法使生成新的 GUID 實例變得容易,確保每個識別碼在系統之間都是唯一的。 在 .NET 中開發的開發人員可以依賴 GUID 來提供其應用程式中的隨機性和唯一性。

IronPDF了解在投資之前進行測試的重要性,因此我們提供一個免費試用. 您可以免費評估該軟體的性能。如果您覺得有幫助,授權價格從 $749 起。

< 上一頁
C# 判別聯合(它如何為開發者工作)
下一個 >
C# 索引器(為開發人員工作原理)

準備開始了嗎? 版本: 2024.12 剛剛發布

免費 NuGet 下載 總下載次數: 11,622,374 查看許可證 >