Iskra.Clients.SequenceGenerator
1.0.2
See the version list below for details.
dotnet add package Iskra.Clients.SequenceGenerator --version 1.0.2
NuGet\Install-Package Iskra.Clients.SequenceGenerator -Version 1.0.2
<PackageReference Include="Iskra.Clients.SequenceGenerator" Version="1.0.2" />
<PackageVersion Include="Iskra.Clients.SequenceGenerator" Version="1.0.2" />
<PackageReference Include="Iskra.Clients.SequenceGenerator" />
paket add Iskra.Clients.SequenceGenerator --version 1.0.2
#r "nuget: Iskra.Clients.SequenceGenerator, 1.0.2"
#addin nuget:?package=Iskra.Clients.SequenceGenerator&version=1.0.2
#tool nuget:?package=Iskra.Clients.SequenceGenerator&version=1.0.2
Iskra.Clients.SequenceGenerator
Описание
Пакет Iskra.Clients.SequenceGenerator
предоставляет клиентскую библиотеку для работы с генератором последовательностей. Он позволяет создавать, обновлять, удалять и получать счетчики последовательностей, а также получать следующие значения этих счетчиков.
Установка
Установите пакет через NuGet:
dotnet add package Iskra.Clients.SequenceGenerator
Использование
1. Конфигурация
Добавьте пакет в ваш проект и настройте его в Startup.cs
или Program.cs
вашего приложения.
В Startup.cs
:
public void ConfigureServices(IServiceCollection services)
{
// Добавление генератора последовательностей с фоновым сервисом для проверки существования необходимых счетчиков
services.AddReoSequenceGeneratorWithCounterNameExistsChecking(Configuration);
}
В Program.cs
(для .NET 6 и выше):
public static IHostBuilder CreateHostBuilder(string[] args) =>
Host.CreateDefaultBuilder(args)
.ConfigureServices((context, services) =>
{
// Добавление генератора последовательностей с фоновым сервисом для проверки существования необходимых счетчиков
services.AddReoSequenceGeneratorWithCounterNameExistsChecking(context.Configuration);
});
2. Использование клиента
Внедрите ISequenceGeneratorClient
в ваш класс и используйте его методы для работы с счетчиками последовательностей.
public class SequenceService
{
private readonly ISequenceGeneratorClient _sequenceGeneratorClient;
public SequenceService(ISequenceGeneratorClient sequenceGeneratorClient)
{
_sequenceGeneratorClient = sequenceGeneratorClient;
}
public async Task<int> GetNextSequenceValue(string name, CancellationToken token = default)
{
var sequence = await _sequenceGeneratorClient.GetNextAsync(name, token);
return sequence.Value;
}
}
3. Методы клиента
Получение счетчика последовательности
Task<Sequence> GetAsync(string name, CancellationToken token);
Обновление счетчика последовательности
Task<Sequence> UpdateAsync(string name, int value, CancellationToken token);
Создание счетчика последовательности
Task<Sequence> CreateAsync(string name, CancellationToken token);
Удаление счетчика последовательности
Task<bool> DeleteAsync(string name, CancellationToken token);
Получение списка всех счетчиков последовательностей
Task<IReadOnlyCollection<Sequence>> GetAllAsync(CancellationToken token);
Получение следующего значения счетчика последовательности
Task<Sequence> GetNextAsync(string name, CancellationToken token);
Получение нескольких значений счетчика последовательности
Task<BulkSequence> GetNextBulkAsync(string name, int chunkSize, CancellationToken token);
Примеры
Создание и получение следующего значения счетчика
public async Task<int> CreateAndGetNextValue(string sequenceName)
{
// Создаем счетчик последовательности
await _sequenceGeneratorClient.CreateAsync(sequenceName);
// Получаем следующее значение счетчика
var nextSequence = await _sequenceGeneratorClient.GetNextAsync(sequenceName);
return nextSequence.Value;
}
Обновление и получение следующего значения счетчика
public async Task<int> UpdateAndGetNextValue(string sequenceName, int newValue)
{
// Обновляем значение счетчика
await _sequenceGeneratorClient.UpdateAsync(sequenceName, newValue);
// Получаем следующее значение счетчика
var nextSequence = await _sequenceGeneratorClient.GetNextAsync(sequenceName);
return nextSequence.Value;
}
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net8.0 is compatible. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
net8.0
- FluentValidation (>= 11.11.0)
- Flurl.Http (>= 4.0.2)
- IdentityModel (>= 7.0.0)
- Iskra.Core.Auth.Abstractions (>= 1.0.74)
- Iskra.Core.Hosting (>= 1.0.74)
- JetBrains.Annotations (>= 2024.3.0)
- Microsoft.Extensions.Configuration (>= 9.0.2)
- Microsoft.Extensions.Configuration.Abstractions (>= 9.0.2)
- Microsoft.Extensions.Configuration.Binder (>= 9.0.2)
- Microsoft.Extensions.DependencyInjection (>= 9.0.2)
- Microsoft.Extensions.DependencyInjection.Abstractions (>= 9.0.2)
- Microsoft.Extensions.Hosting (>= 9.0.2)
- Microsoft.Extensions.Options (>= 9.0.2)
- Microsoft.Extensions.Options.ConfigurationExtensions (>= 9.0.2)
- Reo.Core.CodeConventions (>= 8.0.180)
- Reo.Core.Extensions (>= 8.0.180)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
Version | Downloads | Last Updated |
---|---|---|
1.0.30 | 154 | 5/22/2025 |
1.0.29 | 136 | 5/22/2025 |
1.0.28 | 146 | 5/20/2025 |
1.0.27 | 147 | 5/20/2025 |
1.0.26 | 136 | 5/19/2025 |
1.0.25 | 233 | 5/14/2025 |
1.0.24 | 226 | 5/13/2025 |
1.0.23 | 231 | 5/12/2025 |
1.0.22 | 145 | 5/7/2025 |
1.0.21 | 144 | 5/7/2025 |
1.0.20 | 140 | 5/7/2025 |
1.0.19 | 140 | 4/29/2025 |
1.0.18 | 140 | 4/29/2025 |
1.0.17 | 137 | 4/28/2025 |
1.0.16 | 174 | 4/22/2025 |
1.0.15 | 144 | 4/22/2025 |
1.0.14 | 149 | 4/21/2025 |
1.0.13 | 161 | 4/21/2025 |
1.0.12 | 180 | 4/16/2025 |
1.0.11 | 190 | 4/16/2025 |
1.0.10 | 237 | 4/15/2025 |
1.0.9 | 190 | 4/15/2025 |
1.0.8 | 194 | 4/14/2025 |
1.0.7 | 192 | 4/14/2025 |
1.0.5 | 164 | 4/7/2025 |
1.0.4 | 236 | 4/3/2025 |
1.0.3 | 500 | 3/26/2025 |
1.0.2 | 153 | 3/19/2025 |
1.0.1 | 202 | 2/27/2025 |