Files
2023-03-03 16:07:50 +08:00

45 lines
1.5 KiB
C#
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

// -----------------------------------------------------------------------------
// 让 .NET 开发更简单,更通用,更流行。
// Copyright © 2020-2021 Furion, 百小僧, Baiqian Co.,Ltd.
//
// 框架名称Furion
// 框架作者:百小僧
// 框架版本2.7.9
// 源码地址Gitee https://gitee.com/dotnetchina/Furion
// Githubhttps://github.com/monksoul/Furion
// 开源协议Apache-2.0https://gitee.com/dotnetchina/Furion/blob/master/LICENSE
// -----------------------------------------------------------------------------
using System;
namespace HT.Cloud.Code
{
/// <summary>
/// ID 生成器
/// </summary>
public static class IDGen
{
/// <summary>
/// 生成唯一 ID
/// </summary>
/// <param name="idGeneratorOptions"></param>
/// <param name="serviceProvider"></param>
/// <returns></returns>
public static object NextID(object idGeneratorOptions)
{
return ((IDistributedIDGenerator)GlobalContext.RootServices.GetService(typeof(IDistributedIDGenerator))).Create(idGeneratorOptions);
}
/// <summary>
/// 生成连续 GUID
/// </summary>
/// <param name="guidType"></param>
/// <param name="serviceProvider"></param>
/// <returns></returns>
public static Guid NextID(SequentialGuidType guidType = SequentialGuidType.SequentialAsString)
{
var sequentialGuid = GlobalContext.RootServices.GetService(typeof(IDistributedIDGenerator)) as IDistributedIDGenerator;
return (Guid)sequentialGuid.Create();
}
}
}