.NET ヘルプ

C#新しいGUID(開発者のための仕組み)

公開済み 2024年10月23日
共有:

についてNewGuid() メソッドGuidクラスは、グローバルに一意な識別子を作成するために一般的に使用されます。(GUID). GUIDは128ビットの整数で、すべてのコンピュータとネットワークで使用でき、重複のリスクなしに情報を一意に識別します。 この記事では、GUIDの扱い方について詳しく説明します。(グローバルでユニークなID)C#で、実用的な使用方法、例、コードスニペットに重点を置いています。 以下の日本語に翻訳して下さい:

We’ll explore the capabilities of IronOCR for .NET and how it enhances text recognition in scanned documents. This product by Iron Software provides advanced OCR (Optical Character Recognition) technology, allowing developers to integrate robust text extraction features into their applications.

IronOCR.NET向けの機能と、それがスキャンされたドキュメントのテキスト認識をどのように強化するかを探求します。このIron Softwareによる製品は、高度なOCR (Optical Character Recognition)技術を提供し、開発者がアプリケーションに強力なテキスト抽出機能を統合することを可能にします。IronPDFライブラリまた。

GUIDとは何ですか?

GUID(グローバル一意識別子)は、ソフトウェア開発で使用される一意の識別子です。 .NETフレームワークでは、GUIDはSystem名前空間内のGuid構造体として表されます。 GUIDは、データベースのプライマリキーとして、また、システム間で一意な識別子が必要とされる他のシステムで、他の目的でもよく使用されます。

C#でGUIDを生成する;

C#で新しいGUIDを生成するには、Guid.NewGuidを使用します。()関数を使用します。 このメソッドは、GUIDオブジェクトの新しいインスタンスを作成し、生成された各GUIDが一意であることを保証します。 内部的には、GUIDは乱数発生器を使用して生成され、2つの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桁の16進数で構成され、通常8-4-4-4-12という形式で表示されます。(e.g., e02fd0e4-00fd-090A-ca30-0d00a0038ba0). ToStringを使用して文字列に変換する場合()メソッドでは、GUIDはこの形式で表されます。 この表現により、JSON、XML、データベースなどのテキストベースのフォーマットにGUIDを簡単に格納できるようになります。

以下のコード例は、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オブジェクトに変換します。

2つの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#

このコードでは、2つのGUIDを比較しています。 Guid.NewGuidで生成されるGUIDは、それぞれ()が一意である場合、結果は通常 "The two GUIDs are different." となります。

GUIDを使用する際によくある間違い

  1. **GUIDはランダムであり、NewGuidは連続である。()メソッドはシーケンシャルな値を生成しません。 そのため、GUIDが何らかの秩序を保つと仮定すべきではありません。

  2. GUID比較の代わりに文字列比較: GUIDを文字列として比較することは非効率的です。 GUIDオブジェクトを文字列に変換して文字列値を比較するのではなく、常に直接比較してください。

  3. インデックスを作成しない大規模データベースでのGUIDの使用: GUIDは大きくなる可能性があり、適切にインデックスが作成されない場合、大規模データベースのパフォーマンスに影響を与える可能性があります。 GUIDカラムを主キーとして使用する場合は、インデックスが付けられていることを確認してください。

.NET CoreとFrameworkにおけるGUID

GUIDは、.NET Frameworkと.NET Coreの両方でサポートされています。 Guidクラスの使用法は、.NETプラットフォームの異なるバージョン間で一貫しています。 したがって、.NETのどのバージョンで作業している開発者でも、Guid.NewGuidを使用して簡単にGUIDを生成できます。()メソッド。

GUIDとUUIDの比較

GUIDはUUIDに似ています。(世界共通の識別子).NET、Java、Python、Node.jsの用語は、しばしば同じ意味で使用されます。 仕様には若干の違いがありますが、一意の識別子を生成するという目的は同じです。

GUIDでIronPDFを使う

C#新しいGUID(開発者のための仕組み):図1 - IronPDF

IronPDFは以下のためのPDFライブラリです。HTMLからPDFを生成する.NETアプリケーションでのPDF操作 IronPdfとGUIDを組み合わせることで、PDFドキュメントにユニークなファイル名を生成することができます。 これにより、生成されるすべてのPDFが一意の名前を持つようになり、ファイルの上書きや命名の衝突を防ぐことができます。 新しいGUIDでIronPDFを使う簡単な例です:

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の生成方法、比較方法、文字列からの解析方法、データベースのような実用的なシナリオでの使用方法をご覧いただきました。 Guid.NewGuid()メソッドは、GUIDの新しいインスタンスを簡単に生成し、各識別子がシステム間で一意であることを保証します。 .NETで作業している開発者は、アプリケーションにランダム性と一意性を提供するためにGUIDに頼ることができます。

IronPDFは投資する前にテストすることの重要性を理解しています。無料試用. ソフトウェアの性能は無料で評価できます。有益と判断された場合、ライセンスは749ドルからとなります。

< 以前
C# Discriminated Union (開発者のための仕組み)
次へ >
C# インデクサー(開発者のための仕組み)