A .NET library to generate sequential GUIDs, similar to SQL Server's newsequentialid(). It's a drop-in replacement for System.Guid.NewGuid(), focusing on performance and low allocation.
Caution
The downside is that it's not as unique as System.Guid.NewGuid() and crypotographically insecure. So be sure to understand the trade-offs before using it.
With the SequentialGuidType enum, you can choose between 3 different types of sequential GUIDs:
AsBinary
The sequential part is at the beginning of the GUID, similar to Oracle'sSYS_GUID().AsString(Default)
The sequential part is at the beginning of the GUID.AtEnd
The sequential part is at the end of the GUID, similar to SQL Server'snewsequentialid().
dotnet add package NetEvolve.SequentialGuidusing NetEvolve.SequentialGuid; Guid guid = SequentialGuidFactory.NewGuid(); // Default is SequentialGuidType.AsString // or Guid guid = SequentialGuidFactory.NewGuid(SequentialGuidType.AsBinary);