using NCC.Dependency; using System; namespace NCC.DistributedIDGenerator { /// /// ID 生成器 /// [SuppressSniffer] public static class IDGen { /// /// 生成唯一 ID /// /// /// /// public static object NextID(object idGeneratorOptions, IServiceProvider serviceProvider = default) { return App.GetService(serviceProvider ?? App.RootServices).Create(idGeneratorOptions); } /// /// 生成连续 GUID /// /// /// public static Guid NextID(IServiceProvider serviceProvider = default) { var sequentialGuid = App.GetService(typeof(SequentialGuidIDGenerator), serviceProvider ?? App.RootServices) as IDistributedIDGenerator; return (Guid)sequentialGuid.Create(); } } }