public override void OnApplicationInitialization(CafApplicationContext context) { context.ServiceProvider.GetService <SchedulerCenter>()?.Init();//初始化Job var app = context.ServiceProvider.GetRequiredService <ObjectWrapper <IApplicationBuilder> >().Value; app.Use(async(context, next) => { if (context.Request.Path.Value.ToLower().StartsWith("/jobui")) { context.Request.Path = "/index.html"; await next(); } else { await next(); } }); var manifestEmbeddedProvider = new ManifestEmbeddedFileProvider(typeof(CafJobModule).Assembly, "UI"); app.UseStaticFiles(new StaticFileOptions { FileProvider = manifestEmbeddedProvider }); }
public override void OnApplicationInitialization(CafApplicationContext context) { var options = new MagicOnionOptions(); options.IsReturnExceptionStackTraceInErrorDetail = true; options.ServiceLocator = new MicrosoftExtensionsServiceLocator(context.ServiceProvider, options);//new ServiceLocatorBridge(factory); options.MagicOnionServiceActivator = new MicrosoftExtensionsMagicOnionServiceActivator(); MagicOnionServiceDefinition serviceDefine = null; var config = context.ServiceProvider.GetRequiredService <IGrpcServerConfiguration>(); var generator = context.ServiceProvider.GetRequiredService <IGrpcServiceGenerator>(); generator.GeneraterProxyService();//创建MagicOnion grpc 代理程序集 config.GrpcAssemblies = config.GrpcAssemblies.Append(generator.DynamicAssembly).ToList(); config.GrpcAssemblies = config.GrpcAssemblies.Append(generator.DynamicInterfaceAssembly).ToList(); if (config.GrpcAssemblies != null) { serviceDefine = MagicOnionEngine.BuildServerServiceDefinition(config.GrpcAssemblies.ToArray(), options); } var packageMagicOnionServerService = new PackageMagicOnionServerService(serviceDefine, new[] { new ServerPort(config.GrpcBindAddress, config.GrpcBindPort, ServerCredentials.Insecure) }, null); packageMagicOnionServerService.StartAsync(CancellationToken.None); }
public override void OnApplicationShutdown(CafApplicationContext context) { var grpcConfig = context.ServiceProvider.GetRequiredService <IGrpcClientConfiguration>(); foreach (var serverNodes in grpcConfig.GrpcDirectConnectionConfiguration.GrpcServerNodes) { serverNodes.Value?.InternalChannel?.ShutdownAsync(); } }
public override void OnApplicationInitialization(CafApplicationContext context) { var app = context.GetApplicationBuilder(); app.Use(async(context, next) => { context.Request.EnableBuffering(); await next(); }); app.UseCors(_defaultCorsPolicyName); app.UseStaticHttpContext(); }
public override void OnApplicationInitialization(CafApplicationContext context) { var app = context.ServiceProvider.GetRequiredService <ObjectWrapper <IApplicationBuilder> >().Value;; var _cacheOpetions = context.ServiceProvider.GetService <IOptions <TakedaCacheOptions> >(); var wechatAccoutnOpt = context.ServiceProvider.GetService <IOptions <WechatAccountOptions> >(); if (_cacheOpetions.Value.UseRedis) { app.UseSenparcWeiXinWithRedis(_cacheOpetions, wechatAccoutnOpt); } else { app.UseSenparcWeiXin(_cacheOpetions, wechatAccoutnOpt); } }
public override void OnApplicationInitialization(CafApplicationContext context) { var app = context.GetApplicationBuilder(); var env = context.GetEnvironment(); if (env.IsDevelopment()) { app.UseDeveloperExceptionPage(); } //app.UseHttpsRedirection(); app.UseRouting(); app.UseCafExceptionHandler(); app.UseStaticFiles(); app.UseEndpoints(endpoints => { endpoints.MapControllers(); }); }
public override void OnApplicationInitialization(CafApplicationContext context) { using (var scope = context.ServiceProvider.CreateScope()) { var options = scope.ServiceProvider.GetRequiredService <IOptions <CafMapperOption> >().Value; var mapperConfiguration = new MapperConfiguration(mapper => { foreach (var config in options.Configurators) { config(mapper); } }); var mapper = new Mapper(mapperConfiguration); var mapperWrapper = context.ServiceProvider.GetRequiredService <IObjectWrapper <IMapper> >(); mapperWrapper.Value = mapper; } }
public override void OnApplicationInitialization(CafApplicationContext context) { var app = context.GetApplicationBuilder(); var env = context.GetEnvironment(); if (env.IsDevelopment()) { app.UseDeveloperExceptionPage(); } #region Localization var supportedCultures = new[] { "zh-CN", "en-US" }; app.UseRequestLocalization(cultureOptions => { cultureOptions.AddSupportedCultures(supportedCultures) .AddSupportedUICultures(supportedCultures) .SetDefaultCulture(supportedCultures[0]); }); #endregion app.UseRouting(); app.UseCafExceptionHandler(); app.UseStaticFiles(); #region swagger app.UseSwagger(); app.UseSwaggerUI(option => { option.SwaggerEndpoint("/swagger/v1/swagger.json", "caf Docs"); option.DocumentTitle = "caf API"; }); #endregion app.UseAuthentication(); app.UseAuthorization(); app.UseEndpoints(endpoints => { endpoints.MapControllers(); }); }
public override void OnApplicationInitialization(CafApplicationContext context) { }
public override void OnApplicationInitialization(CafApplicationContext context) { var mapping = context.ServiceProvider.GetRequiredService <IMongoContextEntityMapping>(); mapping.LoadMaping(typeof(MongodbTestMoudle)); }
public static IApplicationBuilder GetApplicationBuilder(this CafApplicationContext context) { return(context.ServiceProvider.GetRequiredService <ObjectWrapper <IApplicationBuilder> >().Value); }
public static IWebHostEnvironment GetEnvironment(this CafApplicationContext context) { return(context.ServiceProvider.GetRequiredService <IWebHostEnvironment>()); }