Orechio.BuildingBlocks
1.2.0
dotnet add package Orechio.BuildingBlocks --version 1.2.0
NuGet\Install-Package Orechio.BuildingBlocks -Version 1.2.0
<PackageReference Include="Orechio.BuildingBlocks" Version="1.2.0" />
<PackageVersion Include="Orechio.BuildingBlocks" Version="1.2.0" />
<PackageReference Include="Orechio.BuildingBlocks" />
paket add Orechio.BuildingBlocks --version 1.2.0
#r "nuget: Orechio.BuildingBlocks, 1.2.0"
#:package Orechio.BuildingBlocks@1.2.0
#addin nuget:?package=Orechio.BuildingBlocks&version=1.2.0
#tool nuget:?package=Orechio.BuildingBlocks&version=1.2.0
Orechio.BuildingBlocks
Primitivas técnicas do ecossistema Orechio. Fonte canônica:
docs/architecture/010-ecosystem-module-strategy.md.
O que este pacote é
Primitivas técnicas, independentes de domínio (ADR-010 §3.2):
| Namespace | Tipos |
|---|---|
Orechio.BuildingBlocks.Results |
Result, Result<T> |
Orechio.BuildingBlocks.Domain |
Entity<TId>, AggregateRoot<TId>, ValueObject, IDomainEvent, DomainEvent |
Orechio.BuildingBlocks.Pagination |
PageRequest, PageResult<T> |
Orechio.BuildingBlocks.Concurrency |
ConcurrencyException |
O que este pacote não é
Não contém domínio — nem da Platform (Identity, Applications, Registry, Access, Organizations, Billing) nem de vertical nenhum (Catalog, Inventory, Sales, Members, Obras). Não referencia EF Core, ASP.NET Core, MediatR nem qualquer projeto da Platform. Isso é travado por testes de arquitetura, não por convenção.
Quem precisa integrar com a Platform (autenticação, tenant, branch, permissões) usa o
pacote separado Orechio.Platform.Client.
Paginação
Contrato único do ecossistema (ADR-010 §7). PageRequest normaliza página/tamanho na
construção — página 1-based, teto de PageSize — para que valor cru de cliente nunca
vire Skip() negativo nem varredura de tabela inteira. PageResult<T> deriva
TotalPages/HasNext/HasPrevious em vez de armazená-los, porque campo armazenado que
pode contradizer os outros é payload que mente.
Handlers devolvem Result<PageResult<T>>: sucesso/falha vive no Result, dados vivem no
PageResult.
Paginação por cursor é um contrato próprio e fica adiada até existir necessidade real (ADR-010 §7).
Versionamento
O <Version> do csproj é a única fonte de verdade (ADR-010 §10). O
CHANGELOG espelha exatamente as versões empacotadas — nunca documenta
release que não existe.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net10.0 is compatible. 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. |
-
net10.0
- No dependencies.
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.