v0.7

v0.7.1

Improvements

  • AGuid() test spec helper now returns a fixed value with optional starts:string parameter

v0.7.0

Features

  • Beta features are available in do-blueprints-service package;
    • DomainLayer is added which creates DomainModel phase artifact to be used in features
    • Added IScoped marker interface
    • Added a default BusinessFeature which uses DomainModel to register services using following conventions:
      • Types which have With method with are registered as transient services with singleton factories
      • Types which implements IScoped interface are registered as scoped services with singleton factories
      • Remaining types are registered as singleton services
      • Implemented interfaces are registered for types with same service lifetimes, if interfaces belongs to any assembly in the added to assembly descriptor list
      • Following types are ignored:
        • Types not in configured assembly or type collection
        • Types with System namespace
        • Non public types
        • Abstract types
        • Value types
        • Types with generic type parameters
        • Attributes
        • Exceptions
        • Delegates
        • Records
        • DTOs

Improvements

  • Features can now access ApplicationContext through LayerConfigurator
  • Added folllowing helper extensions for registering services;
    • AddTransientWithFactory<TService,TImplementation>()
    • AddScopedWithFactory<TService,TImplementation>()
    • AddSingleton<TService,TImplementation>(bool forward)
  • Added ServiceNfr base class which exposes overridable members for performing integration tests using Microsoft.AspNetCore.Mvc.Testing package

Bugfixes

  • Transaction rollback was not reverting changes properly when an exception occured, fixed

Library Upgrades

PackageOld VersionNew Version
Microsoft.AspNetCore.Mvc.NewtonsoftJson8.0.08.0.1
Microsoft.AspNetCore.Mvc.Testingnew8.0.1
Microsoft.Extensions.Configuration.Binder8.0.08.0.1
Microsoft.Extensions.TimeProvider.Testing8.0.08.0.1
MySql.Data8.2.08.3.0