修改utf-8
continuous-integration/drone/push Build is passing
Details
continuous-integration/drone/push Build is passing
Details
parent
a63904c0bb
commit
c971161d31
|
@ -1,4 +1,4 @@
|
||||||
using Autofac;
|
using Autofac;
|
||||||
using Microsoft.AspNetCore.Builder;
|
using Microsoft.AspNetCore.Builder;
|
||||||
using Microsoft.AspNetCore.Hosting;
|
using Microsoft.AspNetCore.Hosting;
|
||||||
using Microsoft.AspNetCore.Http.Features;
|
using Microsoft.AspNetCore.Http.Features;
|
||||||
|
@ -53,7 +53,7 @@ namespace IRaCIS.Core.API
|
||||||
containerBuilder.RegisterModule<AutofacModuleSetup>();
|
containerBuilder.RegisterModule<AutofacModuleSetup>();
|
||||||
|
|
||||||
#region Test
|
#region Test
|
||||||
//containerBuilder.RegisterType<ClinicalDataService>().PropertiesAutowired().InstancePerLifetimeScope();//注册仓储
|
//containerBuilder.RegisterType<ClinicalDataService>().PropertiesAutowired().InstancePerLifetimeScope();//注册仓储
|
||||||
|
|
||||||
//var container = containerBuilder.Build();
|
//var container = containerBuilder.Build();
|
||||||
|
|
||||||
|
@ -75,12 +75,12 @@ namespace IRaCIS.Core.API
|
||||||
// This method gets called by the runtime. Use this method to add services to the container.
|
// This method gets called by the runtime. Use this method to add services to the container.
|
||||||
public void ConfigureServices(IServiceCollection services)
|
public void ConfigureServices(IServiceCollection services)
|
||||||
{
|
{
|
||||||
//健康检查
|
//健康检查
|
||||||
services.AddHealthChecks();
|
services.AddHealthChecks();
|
||||||
//本地化
|
//本地化
|
||||||
services.AddJsonLocalization(options => options.ResourcesPath = "Resources");
|
services.AddJsonLocalization(options => options.ResourcesPath = "Resources");
|
||||||
|
|
||||||
// 异常、参数统一验证过滤器、Json序列化配置、字符串参数绑型统一Trim()
|
// 异常、参数统一验证过滤器、Json序列化配置、字符串参数绑型统一Trim()
|
||||||
services.AddControllers(options =>
|
services.AddControllers(options =>
|
||||||
{
|
{
|
||||||
//options.Filters.Add<LogActionFilter>();
|
//options.Filters.Add<LogActionFilter>();
|
||||||
|
@ -95,7 +95,7 @@ namespace IRaCIS.Core.API
|
||||||
|
|
||||||
|
|
||||||
})
|
})
|
||||||
.AddNewtonsoftJsonSetup(); // NewtonsoftJson 序列化 处理
|
.AddNewtonsoftJsonSetup(); // NewtonsoftJson 序列化 处理
|
||||||
|
|
||||||
services.AddOptions().Configure<SystemEmailSendConfig>(_configuration.GetSection("SystemEmailSendConfig"));
|
services.AddOptions().Configure<SystemEmailSendConfig>(_configuration.GetSection("SystemEmailSendConfig"));
|
||||||
services.AddOptions().Configure<ServiceVerifyConfigOption>(_configuration.GetSection("BasicSystemConfig"));
|
services.AddOptions().Configure<ServiceVerifyConfigOption>(_configuration.GetSection("BasicSystemConfig"));
|
||||||
|
@ -103,62 +103,62 @@ namespace IRaCIS.Core.API
|
||||||
services.AddOptions().Configure<ObjectStoreServiceOptions>(_configuration.GetSection("ObjectStoreService"));
|
services.AddOptions().Configure<ObjectStoreServiceOptions>(_configuration.GetSection("ObjectStoreService"));
|
||||||
|
|
||||||
|
|
||||||
//动态WebApi + UnifiedApiResultFilter 省掉控制器代码
|
//动态WebApi + UnifiedApiResultFilter 省掉控制器代码
|
||||||
services.AddDynamicWebApiSetup();
|
services.AddDynamicWebApiSetup();
|
||||||
//AutoMapper
|
//AutoMapper
|
||||||
services.AddAutoMapperSetup();
|
services.AddAutoMapperSetup();
|
||||||
//EF ORM QueryWithNoLock
|
//EF ORM QueryWithNoLock
|
||||||
services.AddEFSetup(_configuration);
|
services.AddEFSetup(_configuration);
|
||||||
//Http 响应压缩
|
//Http 响应压缩
|
||||||
services.AddResponseCompressionSetup();
|
services.AddResponseCompressionSetup();
|
||||||
//Swagger Api 文档
|
//Swagger Api 文档
|
||||||
services.AddSwaggerSetup();
|
services.AddSwaggerSetup();
|
||||||
//JWT Token 验证
|
//JWT Token 验证
|
||||||
services.AddJWTAuthSetup(_configuration);
|
services.AddJWTAuthSetup(_configuration);
|
||||||
// MediatR 进程内消息 事件解耦 从程序集中 注册命令和handler对应关系
|
// MediatR 进程内消息 事件解耦 从程序集中 注册命令和handler对应关系
|
||||||
services.AddMediatR(cfg => cfg.RegisterServicesFromAssemblyContaining<ConsistencyVerificationHandler>());
|
services.AddMediatR(cfg => cfg.RegisterServicesFromAssemblyContaining<ConsistencyVerificationHandler>());
|
||||||
// EasyCaching 缓存
|
// EasyCaching 缓存
|
||||||
services.AddEasyCachingSetup(_configuration);
|
services.AddEasyCachingSetup(_configuration);
|
||||||
|
|
||||||
//services.AddDistributedMemoryCache();
|
//services.AddDistributedMemoryCache();
|
||||||
|
|
||||||
// hangfire 定时任务框架 有界面,更友好~
|
// hangfire 定时任务框架 有界面,更友好~
|
||||||
services.AddhangfireSetup(_configuration);
|
services.AddhangfireSetup(_configuration);
|
||||||
|
|
||||||
// QuartZ 定时任务框架 使用了hangfire 暂时不用,后续需要可以打开,已经配好
|
// QuartZ 定时任务框架 使用了hangfire 暂时不用,后续需要可以打开,已经配好
|
||||||
services.AddQuartZSetup(_configuration);
|
services.AddQuartZSetup(_configuration);
|
||||||
|
|
||||||
// 保护上传文件
|
// 保护上传文件
|
||||||
//services.AddStaticFileAuthorizationSetup();
|
//services.AddStaticFileAuthorizationSetup();
|
||||||
|
|
||||||
|
|
||||||
////HttpReports 暂时废弃
|
////HttpReports 暂时废弃
|
||||||
//services.AddHttpReports().AddHttpTransport();
|
//services.AddHttpReports().AddHttpTransport();
|
||||||
//Serilog 日志可视化 LogDashboard日志
|
//Serilog 日志可视化 LogDashboard日志
|
||||||
services.AddLogDashboardSetup();
|
services.AddLogDashboardSetup();
|
||||||
//上传限制 配置
|
//上传限制 配置
|
||||||
services.Configure<FormOptions>(options =>
|
services.Configure<FormOptions>(options =>
|
||||||
{
|
{
|
||||||
options.MultipartBodyLengthLimit = int.MaxValue;
|
options.MultipartBodyLengthLimit = int.MaxValue;
|
||||||
options.ValueCountLimit = int.MaxValue;
|
options.ValueCountLimit = int.MaxValue;
|
||||||
options.ValueLengthLimit = int.MaxValue;
|
options.ValueLengthLimit = int.MaxValue;
|
||||||
});
|
});
|
||||||
//IP 限流 可设置白名单 或者黑名单
|
//IP 限流 可设置白名单 或者黑名单
|
||||||
//services.AddIpPolicyRateLimitSetup(_configuration);
|
//services.AddIpPolicyRateLimitSetup(_configuration);
|
||||||
// 用户类型 策略授权
|
// 用户类型 策略授权
|
||||||
//services.AddAuthorizationPolicySetup(_configuration);
|
//services.AddAuthorizationPolicySetup(_configuration);
|
||||||
|
|
||||||
services.AddJsonConfigSetup(_configuration);
|
services.AddJsonConfigSetup(_configuration);
|
||||||
//转发头设置 获取真实IP
|
//转发头设置 获取真实IP
|
||||||
services.Configure<ForwardedHeadersOptions>(options =>
|
services.Configure<ForwardedHeadersOptions>(options =>
|
||||||
{
|
{
|
||||||
options.ForwardedHeaders =
|
options.ForwardedHeaders =
|
||||||
ForwardedHeaders.XForwardedFor | ForwardedHeaders.XForwardedProto;
|
ForwardedHeaders.XForwardedFor | ForwardedHeaders.XForwardedProto;
|
||||||
});
|
});
|
||||||
//Dicom影像渲染图片 跨平台
|
//Dicom影像渲染图片 跨平台
|
||||||
services.AddDicomSetup();
|
services.AddDicomSetup();
|
||||||
|
|
||||||
// 实时应用
|
// 实时应用
|
||||||
services.AddSignalR();
|
services.AddSignalR();
|
||||||
|
|
||||||
|
|
||||||
|
@ -175,17 +175,17 @@ namespace IRaCIS.Core.API
|
||||||
{
|
{
|
||||||
//app.UsePathBase(PathString.FromUriComponent("/api"));
|
//app.UsePathBase(PathString.FromUriComponent("/api"));
|
||||||
|
|
||||||
//本地化
|
//本地化
|
||||||
app.UseLocalization();
|
app.UseLocalization();
|
||||||
|
|
||||||
app.UseForwardedHeaders();
|
app.UseForwardedHeaders();
|
||||||
|
|
||||||
//响应压缩
|
//响应压缩
|
||||||
app.UseResponseCompression();
|
app.UseResponseCompression();
|
||||||
|
|
||||||
//app.UseCors(t => t.AllowAnyOrigin().AllowAnyMethod().AllowAnyHeader());
|
//app.UseCors(t => t.AllowAnyOrigin().AllowAnyMethod().AllowAnyHeader());
|
||||||
|
|
||||||
//不需要 token 访问的静态文件 wwwroot css, JavaScript, and images don't require authentication.
|
//不需要 token 访问的静态文件 wwwroot css, JavaScript, and images don't require authentication.
|
||||||
app.UseStaticFiles();
|
app.UseStaticFiles();
|
||||||
|
|
||||||
|
|
||||||
|
@ -195,10 +195,10 @@ namespace IRaCIS.Core.API
|
||||||
//hangfire
|
//hangfire
|
||||||
app.UseHangfireConfig(env);
|
app.UseHangfireConfig(env);
|
||||||
|
|
||||||
////暂时废弃
|
////暂时废弃
|
||||||
//app.UseHttpReports();
|
//app.UseHttpReports();
|
||||||
|
|
||||||
////限流 中间件
|
////限流 中间件
|
||||||
//app.UseIpRateLimiting();
|
//app.UseIpRateLimiting();
|
||||||
|
|
||||||
|
|
||||||
|
@ -211,18 +211,18 @@ namespace IRaCIS.Core.API
|
||||||
{
|
{
|
||||||
//app.UseHsts();
|
//app.UseHsts();
|
||||||
}
|
}
|
||||||
Console.WriteLine("当前环境: " + env.EnvironmentName);
|
Console.WriteLine("当前环境: " + env.EnvironmentName);
|
||||||
|
|
||||||
//app.UseMiddleware<AuthMiddleware>();
|
//app.UseMiddleware<AuthMiddleware>();
|
||||||
|
|
||||||
// 特殊异常处理 比如 404
|
// 特殊异常处理 比如 404
|
||||||
app.UseStatusCodePagesWithReExecute("/Error/{0}");
|
app.UseStatusCodePagesWithReExecute("/Error/{0}");
|
||||||
|
|
||||||
SwaggerSetup.Configure(app, env);
|
SwaggerSetup.Configure(app, env);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
////serilog 记录请求的用户信息
|
////serilog 记录请求的用户信息
|
||||||
app.UseSerilogConfig(env);
|
app.UseSerilogConfig(env);
|
||||||
|
|
||||||
app.UseRouting();
|
app.UseRouting();
|
||||||
|
@ -237,7 +237,7 @@ namespace IRaCIS.Core.API
|
||||||
//app.UseJwtBearerQueryString();
|
//app.UseJwtBearerQueryString();
|
||||||
app.UseAuthorization();
|
app.UseAuthorization();
|
||||||
|
|
||||||
////文件伺服 必须带Token 访问
|
////文件伺服 必须带Token 访问
|
||||||
////app.UseIRacisHostStaticFileStore(env);
|
////app.UseIRacisHostStaticFileStore(env);
|
||||||
|
|
||||||
app.UseEndpoints(endpoints =>
|
app.UseEndpoints(endpoints =>
|
||||||
|
@ -253,7 +253,7 @@ namespace IRaCIS.Core.API
|
||||||
var hangfireJobService = app.ApplicationServices.GetRequiredService<IIRaCISHangfireJob>();
|
var hangfireJobService = app.ApplicationServices.GetRequiredService<IIRaCISHangfireJob>();
|
||||||
|
|
||||||
await hangfireJobService.InitHangfireJobTaskAsync();
|
await hangfireJobService.InitHangfireJobTaskAsync();
|
||||||
//有的时候每调用
|
//有的时候每调用
|
||||||
//HangfireJobHelper.NotImmediatelyOnceOnlyJob<IIRaCISHangfireJob>(t => t.InitHangfireJobTaskAsync(),TimeSpan.FromSeconds(1));
|
//HangfireJobHelper.NotImmediatelyOnceOnlyJob<IIRaCISHangfireJob>(t => t.InitHangfireJobTaskAsync(),TimeSpan.FromSeconds(1));
|
||||||
|
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue