Key4.CQRS 1.1.0.2-b
Key4.CQRS
Ensemble d'handlers par défaut pour les différentes commandes pour CQRS.
Configuration
Créer les modèles
Créer les différents modèles afin de pouvoir utiliser les handlers.
Modèle en base de données
public class Book
{
public int Id { get; set; }
public string Title { get; set; }
public virtual Author Author { get; set; }
}
Modèle de réponse
public class BookDto
{
public int Id { get; set; }
public string Title { get; set; }
public string Author { get; set; }
}
Modèle pour la requête
public class AddBookCommand : IRequest<BookDto>
{
public string Title { get; set; }
public virtual Author Author { get; set; }
}
Modèle de validation
public partial class AddBookCommandValidator : AbstractValidator<AddBookCommand>
{
public AddBookCommandValidator()
{
RuleFor(b => b.Title).NotEmpty();
RuleFor(b => b.Title).MaximumLength(256);
}
}
Implémentation des handlers
Sans override de la méthode Handle.
public class AddBookCommandHandler : BaseAddCommandHandler<AddBookCommand, BookDto, AddBookCommandValidator, Book>
{
public AddBookCommandHandler(IBaseService<Book> service, IMapper mapper) : base(service, mapper)
{
}
}
Avec override de la méthode Handle.
public class AddBookCommandHandler : BaseAddCommandHandler<AddBookCommand, BookDto, AddBookCommandValidator, Book>
{
public AddBookCommandHandler(IBaseService<Book> service, IMapper mapper) : base(service, mapper)
{
}
public override async Task<BookDto> Handle(AddBookCommand request CancellationToken cancellationToken)
{
// Validation (cf. AddBookCommandValidator).
Validation(request);
// Handle.
var book = _mapper.Map<Book>(request);
var bookSynced = await _service.Sync(book);
return _mapper.Map<BookDto>(bookSynced);
}
}
Showing the top 20 packages that depend on Key4.CQRS.
| Packages | Downloads |
|---|---|
|
key4.Bus
Contracts, services and classes used for message queue synchronization of microservices.
|
695 |
|
key4.Bus
Contracts, services and classes used for message queue synchronization of microservices.
|
849 |
|
key4.Bus
Contracts, services and classes used for message queue synchronization of microservices.
|
979 |
|
key4.Bus
Contracts, services and classes used for message queue synchronization of microservices.
|
1,040 |
|
key4.Bus
Contracts, services and classes used for message queue synchronization of microservices.
|
1,135 |
|
key4.Bus
Contracts, services and classes used for message queue synchronization of microservices.
|
1,563 |
|
key4.Bus
Contracts, services and classes used for message queue synchronization of microservices.
|
1,778 |
|
key4.Bus
Contracts, services and classes used for message queue synchronization of microservices.
|
1,851 |
|
key4.Bus
Contracts, services and classes used for message queue synchronization of microservices.
|
4,353 |
|
key4.Core
Services and classes.
|
573 |
|
key4.Core
Services and classes.
|
588 |
|
key4.Core
Services and classes.
|
637 |
|
key4.Core
Services and classes.
|
790 |
|
key4.Core
Services and classes.
|
825 |
|
key4.Core
Services and classes.
|
949 |
|
key4.Core
Services and classes.
|
1,264 |
|
key4.Core
Services and classes.
|
1,407 |
|
key4.Core
Services and classes.
|
1,874 |
|
key4.Core
Services and classes.
|
3,622 |
|
key4.Core
Services and classes.
|
4,082 |
.NET 5.0
- AutoMapper (>= 10.1.1)
- FluentValidation (>= 10.3.3)
- Key4.MyKey4.Genericity.Application (>= 1.0.6.5-b)
- MediatR (>= 9.0.0)
| Version | Downloads | Last updated |
|---|---|---|
| 17.2.0 | 495 | 10/28/2025 |
| 17.2.0-a.60 | 2 | 10/28/2025 |
| 17.1.0 | 532 | 10/01/2025 |
| 17.1.0-a.58 | 3 | 10/01/2025 |
| 17.1.0-a.57 | 3 | 10/01/2025 |
| 17.0.0 | 4,355 | 12/05/2024 |
| 17.0.0-a.54 | 10 | 12/05/2024 |
| 17.0.0-a.53 | 12 | 12/05/2024 |
| 16.1.0 | 1,607 | 05/16/2024 |
| 16.1.0-a.47 | 11 | 05/16/2024 |
| 16.0.0 | 884 | 03/20/2024 |
| 16.0.0-a.46 | 12 | 05/07/2024 |
| 16.0.0-a.44 | 12 | 03/20/2024 |
| 15.2.0 | 235 | 03/18/2024 |
| 15.2.0-a.42 | 12 | 03/18/2024 |
| 15.1.0 | 2,941 | 11/23/2023 |
| 15.1.0-a.40 | 12 | 11/23/2023 |
| 15.0.0 | 1,188 | 11/15/2023 |
| 15.0.0-a.39 | 12 | 11/23/2023 |
| 15.0.0-a.38 | 14 | 11/20/2023 |
| 15.0.0-a.37 | 13 | 11/20/2023 |
| 15.0.0-a.35 | 13 | 11/15/2023 |
| 14.1.0 | 326 | 10/18/2023 |
| 14.1.0-a.31 | 12 | 10/18/2023 |
| 14.0.2 | 722 | 09/07/2023 |
| 14.0.2-a.30 | 26 | 10/13/2023 |
| 14.0.2-a.29 | 25 | 10/13/2023 |
| 14.0.2-a.28 | 21 | 10/12/2023 |
| 14.0.2-a.27 | 12 | 10/12/2023 |
| 14.0.2-a.25 | 13 | 09/07/2023 |
| 14.0.1 | 1,031 | 09/01/2023 |
| 14.0.0 | 95 | 08/30/2023 |
| 14.0.0-a.21 | 11 | 08/30/2023 |
| 13.0.5 | 453 | 08/15/2023 |
| 13.0.5-a.19 | 11 | 08/15/2023 |
| 13.0.4 | 1,337 | 06/26/2023 |
| 13.0.3 | 223 | 06/07/2023 |
| 13.0.2 | 267 | 04/26/2023 |
| 13.0.2-a.13 | 14 | 05/02/2023 |
| 13.0.1 | 264 | 04/14/2023 |
| 13.0.0 | 451 | 03/24/2023 |
| 12.1.3 | 381 | 03/01/2023 |
| 12.1.2 | 149 | 02/21/2023 |
| 12.1.1 | 35 | 02/20/2023 |
| 12.1.0 | 26 | 02/20/2023 |
| 12.0.3 | 18 | 02/20/2023 |
| 12.0.2 | 13 | 02/20/2023 |
| 12.0.1 | 32 | 02/17/2023 |
| 12.0.0 | 19 | 02/17/2023 |
| 3.0.0.4-b | 9 | 12/08/2022 |
| 2.0.0.3-b | 10 | 12/08/2022 |
| 1.1.0.2-b | 13 | 12/08/2022 |