public static IServiceCollection AddMicroService(this IServiceCollection services, Action <MicroServiceBuilder> handler = null, Action <MicroServiceSettings> settingsHandler = null) { if (services == null) { throw new ArgumentNullException(nameof(services)); } var settings = new MicroServiceSettings(); settingsHandler?.Invoke(settings); services.AddSingleton(settings); var builder = new MicroServiceBuilder(services, settings); handler?.Invoke(builder); return(services); }
public MicroServiceBuilder(IServiceCollection services, MicroServiceSettings settings) { Services = services ?? throw new ArgumentNullException(nameof(services)); Settings = settings; }