public static IMicroserviceBuilder UseMicroservieOfAspNetCore( this IMicroserviceBuilder microserviceBuilder, IApplicationBuilder app ) { var applicationLfetime = app.ApplicationServices.GetService <IApplicationLifetime>(); var lifetime = app.ApplicationServices.GetService <IAppLifetime>(); applicationLfetime.ApplicationStarted.Register(() => lifetime.StartApplication()); applicationLfetime.ApplicationStopped.Register(lifetime.StopApplication); return(microserviceBuilder); }
public static IMicroserviceBuilder UseConsul( this IMicroserviceBuilder microserviceBuilder ) { var serverCenterStartup = microserviceBuilder.ApplicationServices.GetService <IMicropartOfServiceCenterStartup>(); var lifetime = microserviceBuilder.ApplicationServices.GetService <IAppLifetime>(); lifetime.ApplicationStarted.Register(() => serverCenterStartup.Start()); lifetime.ApplicationStopped.Register(serverCenterStartup.Stop); var appConfigurationManager = microserviceBuilder.ApplicationServices.GetService <IAppConfigurationManager>(); appConfigurationManager.MonitorConfig <AppConfigOfConsul>(); return(microserviceBuilder); }