Skip to main content
Version: 3.0

Installation

Install the core package first. Then add only the companion packages you need. All six packages ship together with the same version number.

PackageWhat it is forTarget frameworkExtra dependencies
Masterly.BusinessRulesThe core: rules, builders, composition, batch checking, context, caching, feature gates, parameters and specificationsnetstandard2.1None
Masterly.BusinessRules.ExpressionsRule conditions written as text, with explanations that show the bound valuesnetstandard2.1None
Masterly.BusinessRules.DiagnosticsStructured ILogger logging, OpenTelemetry spans and metrics for rule evaluationnetstandard2.1Microsoft.Extensions.Logging.Abstractions 10.0.14, System.Diagnostics.DiagnosticSource 10.0.14
Masterly.BusinessRules.DependencyInjectionAssembly scanning, injectable rule runners and per-tenant rule setsnetstandard2.1Microsoft.Extensions.DependencyInjection.Abstractions 10.0.14
Masterly.BusinessRules.FeatureManagementDrives feature-gated rules from Microsoft.FeatureManagement flags and variantsnetstandard2.1Microsoft.FeatureManagement 4.8.0
Masterly.BusinessRules.TestingOutcome coverage, boundary finder, property checks and mutants for your test projectsnet8.0, net10.0CsCheck 4.9.1 on .NET 8 and 9, 5.0.0 on .NET 10

Every companion package also depends on the core package. The versions shown are the minimum versions each package references.

dotnet add package Masterly.BusinessRules
dotnet add package Masterly.BusinessRules.Expressions
dotnet add package Masterly.BusinessRules.Diagnostics
dotnet add package Masterly.BusinessRules.DependencyInjection
dotnet add package Masterly.BusinessRules.FeatureManagement
dotnet add package Masterly.BusinessRules.Testing

Or, in the Visual Studio Package Manager Console, run Install-Package Masterly.BusinessRules, and the same for each companion package you need.

note

netstandard2.1 runs on .NET Core 3.0 or later and on .NET 5 or later. It does not run on .NET Framework. The Testing package needs a test project that targets .NET 8 or later.