- 安装包Yitter.IdGenerator
- 在项目创建Configs文件夹,在文件夹创建idsettings.json配置文件
{ "IdGenerate": { "WorkerId": 1, //機器id, 最大值 2^WorkerIdBitLength-1 "WorkerIdBitLength": 8 } }
全局注册服务使用,位置在启动项Program.cs
-
var configuration = new ConfigurationBuilder() .SetBasePath(Directory.GetCurrentDirectory()) .AddJsonFile("appsettings.json") .Build(); var builder = WebApplication.CreateBuilder(args); var app = builder.Build(); IHost host = Host.CreateDefaultBuilder(args) .UseWindowsService(options => { options.ServiceName = "JWProject Worker Service"; }) .ConfigureServices((context,services) => { services.AddCtmIdGenerator(builder.Configuration);//雪花算法 }) .Build(); await host.RunAsync();
还要将文件复制到F:\项目路径\bin\Debug\net8.0\Configs位置复制刚刚创建了两个配置文件, 否则会提示找不到文件
-
最后在业务层依赖注入并且使用
-
ASP.NET 8 自动生成ID之雪花算法(全局注册)-实例
于 2024-05-16 11:30:11 首次发布