logo

Readme-Racker

Say Goodbye to Manual README Writing.

← Back

Show Markdown

Download Markdown

Readme

ByteAether.Ulid

公式ULID仕様に完全に準拠した、高性能な.NETにおけるULID(Universally Unique Lexicographically Sortable Identifiers:普遍的に一意で辞書順にソート可能な識別子)の実装。

はじめに

ULIDは、普遍的に一意であり、辞書順にソート可能であるように設計された識別子であり、分散システムや時間順に並べられたデータに最適です。このライブラリは、堅牢で完全に準拠した.NETにおけるULIDの実装を提供します。

特徴

  • 普遍的に一意: システム全体でグローバルな一意性を保証します。
  • ソート可能: 時間ベースのソートのために辞書順に並べられます。
  • 高速かつ効率的: 高いパフォーマンスと低いメモリ使用量のために最適化されています。
  • 仕様準拠: ULID仕様に完全に準拠しています。
  • 相互運用可能: GUIDとの間、およびバイト配列との間の変換メソッドが含まれています。
  • 事前(AoT)コンパイル互換: 起動パフォーマンスの向上とバイナリサイズの縮小のために、AoTコンパイルと完全に互換性があります。

インストール

NuGet経由で最新の安定版パッケージをインストールします。

dotnet add package ByteAether.Ulid

使い方

using ByteAether.Ulid;

// 新しいULIDを作成
Ulid ulid = Ulid.New();
Console.WriteLine(ulid);

// 文字列からULIDを解析
Ulid parsedUlid = Ulid.Parse("01AN4Z07BY79KA1307SR9X4MV3");
Console.WriteLine(parsedUlid);

// ULIDをGuidに変換
Guid guid = ulid.ToGuid();
Console.WriteLine(guid);

// GuidからULIDを作成
Ulid ulidFromGuid = Ulid.New(guid);
Console.WriteLine(ulidFromGuid);

// ULIDから時間を取得
DateTimeOffset time = ulid.Time;
Console.WriteLine(time);

// ULIDが有効かどうかを確認
bool isValid = Ulid.IsValid("01AN4Z07BY79KA1307SR9X4MV3");
Console.WriteLine(isValid);

設定

必要な設定はありません。

依存関係

<ItemGroup>
    <PackageReference Include="ByteAether.Ulid" Version="[Latest Version]" />
</ItemGroup>

🌍 このREADMEは複数の言語で利用可能です: 🔗 readme.maxpfeffer.de