Skip to main content

Wird gesucht…

Tools
Artikel
Alle Ergebnisse anzeigen
.NET ID Generator

GUID Generator - Bezeichner im Microsoft-Format

GUID im Microsoft-Format (UUID v4), aufbereitet für .NET, C#, SQL Server und Windows. Großbuchstaben und geschweifte Klammern optional.

GUID Generator
Client-side
Export as:

Was ist eine GUID?

GUID steht für Globally Unique Identifier und ist Microsofts Begriff für einen 128-Bit-Bezeichner. Im Windows- und .NET-Umfeld wird er traditionell in Großbuchstaben und geschweiften Klammern geschrieben: {550E8400-E29B-41D4-A716-446655440000}.

Der Inhalt ist identisch mit einer UUID. Dieser Generator erzeugt kryptografisch zufällige v4-Werte und formatiert sie anschließend so, wie es die Microsoft-Werkzeuge erwarten.

GUID und UUID: derselbe Gegenstand

Es gibt keinen technischen Unterschied. Beide bestehen aus 128 Bit, kodieren Version und Variante an denselben Stellen und lassen sich ohne Umrechnung austauschen.

Eine historische Eigenheit bleibt: Microsoft speichert die ersten drei Felder intern in Little-Endian-Reihenfolge. Wer GUIDs als Rohbytes zwischen .NET und anderen Plattformen austauscht, muss die Byte-Reihenfolge beachten - bei der Textform tritt das Problem nicht auf.

GUIDs im .NET-Ökosystem

Guid.NewGuid() liefert eine zufällige v4-GUID. Für die Formatierung stehen mehrere Kennzeichen bereit: "D" mit Bindestrichen, "B" mit geschweiften Klammern, "N" ohne Trennzeichen, "P" mit runden Klammern.

var id = Guid.NewGuid();
Console.WriteLine(id.ToString("B")); // {0cff580f-0d52-48e3-859e-0ef5e6ebf7c1}

In Entity Framework Core wird eine Guid-Eigenschaft automatisch auf uniqueidentifier abgebildet.

GUIDs in SQL Server

Der passende Datentyp ist UNIQUEIDENTIFIER mit 16 Byte. Als geclusterter Primärschlüssel sind zufällige GUIDs allerdings problematisch: jeder INSERT landet an einer anderen Stelle und fragmentiert den Index.

Wenn Sie GUIDs als Schlüssel brauchen, gibt es zwei gangbare Wege: einen aufsteigenden Schlüssel für das Clustering verwenden und die GUID nur als eindeutigen Zusatzschlüssel führen, oder auf zeitlich sortierte Werte wie UUID v7 wechseln.

GUIDs in Registry und COM

Windows nutzt GUIDs an vielen Stellen als stabile Bezeichner: COM-Klassen (CLSID) und Schnittstellen (IID), Geräteklassen, Installationspakete in HKEY_CLASSES_ROOT. In diesen Kontexten ist die Schreibweise mit geschweiften Klammern und Großbuchstaben verbindlich - deshalb ist sie in diesem Generator voreingestellt.

Typische Einsatzgebiete

Neben den Windows-internen Verwendungen sind GUIDs im .NET-Umfeld üblich für Primärschlüssel verteilter Anwendungen, Korrelations-IDs in Logs, Mandantenkennungen in Mehrmandantensystemen, Idempotenzschlüssel in Messaging-Systemen und Namen für Blob-Uploads.

Formatvarianten

Dieselben 128 Bit lassen sich unterschiedlich darstellen: mit oder ohne Bindestriche, in Groß- oder Kleinbuchstaben, mit geschweiften oder runden Klammern. Wichtig ist nur, dass Sie sich innerhalb eines Systems auf eine Schreibweise festlegen - sonst scheitern Vergleiche an Formatunterschieden statt an tatsächlich verschiedenen Werten. Dieser Generator stellt Groß-/Kleinschreibung, Bindestriche und Klammern einzeln um.

Frequently Asked Questions

GUID steht für Globally Unique Identifier und ist Microsofts Bezeichnung für einen 128-Bit-Bezeichner. Technisch ist eine GUID eine UUID; der Unterschied liegt in der Schreibweise, die im Microsoft-Umfeld üblicherweise Großbuchstaben und geschweifte Klammern verwendet.

In der Praxis ja. Beide sind 128 Bit lang und folgen derselben Struktur. Die von diesem Generator erzeugten GUIDs sind gültige UUID v4 und werden von jeder UUID-Bibliothek akzeptiert.

Mit Guid.NewGuid(). Das liefert eine kryptografisch zufällige v4-GUID. Mit ToString("B") erhalten Sie die Form mit geschweiften Klammern, mit ToString("N") die Form ohne Bindestriche.

NEWID() erzeugt eine zufällige GUID und führt als Primärschlüssel zu Index-Fragmentierung. NEWSEQUENTIALID() erzeugt aufsteigende Werte und ist deutlich indexfreundlicher, verrät aber die Reihenfolge und lässt sich teilweise vorhersagen - für öffentlich sichtbare Bezeichner ist es daher ungeeignet.

Ja. Die Zufallsbytes kommen aus crypto.getRandomValues(), dem CSPRNG Ihres Browsers. Es wird nichts an einen Server übertragen.

Need identifiers in production?

Use our REST API or copy-ready Dev Lab snippets for 25+ languages.