From e3034dbd4d96e244af376ba36842edf1f732a76c Mon Sep 17 00:00:00 2001 From: Rodney Chen <rodney.chen@hotmail.com> Date: 星期二, 24 九月 2024 10:35:12 +0800 Subject: [PATCH] 优化API框架,分离项目业务逻辑 --- Tiger.Api/Startup.cs | 29 +++++++++++++++++++++-------- 1 files changed, 21 insertions(+), 8 deletions(-) diff --git a/Tiger.Api/Startup.cs b/Tiger.Api/Startup.cs index 1f25586..5a9aace 100644 --- a/Tiger.Api/Startup.cs +++ b/Tiger.Api/Startup.cs @@ -14,7 +14,9 @@ using System.IO; using System.Linq; using System.Reflection; +using Tiger.Api.Controllers; using Tiger.IBusiness; +using Tiger.IBusiness.Utility; namespace Tiger.Api { @@ -26,6 +28,7 @@ public Startup(IConfiguration configuration) { Configuration = configuration; + //鍒濆鍖� ApiConfig ApiConfig.InitConfig(configuration); //娴嬭瘯浠g爜 @@ -53,11 +56,13 @@ { //services.RegisterAssembly("Tiger.Service"); //services.AddTransient(typeof(IBaseService<>), typeof(BaseService<>)); - services.AddControllers().AddNewtonsoftJson(opt => + services.AddControllersWithViews().AddNewtonsoftJson(opt => { opt.SerializerSettings.ContractResolver = new Newtonsoft.Json.Serialization.DefaultContractResolver(); opt.SerializerSettings.DateFormatString = "yyyy-MM-dd HH:mm:ss"; }); + //services.AddControllers().AddApplicationPart(typeof(_WMSTestController).Assembly); + services.AddControllers().AddExtraControllers(); //閰嶇疆璺ㄥ煙澶勭悊cors 聽 聽 聽 聽 聽 聽 services.AddCors(options => @@ -73,7 +78,7 @@ }); services.AddSwaggerGen(c => { - c.SwaggerDoc(version, new OpenApiInfo { Title = "Share API", Version = version }); + c.SwaggerDoc(version, new OpenApiInfo { Title = "Tiger API", Version = version }); var basePath = AppDomain.CurrentDomain.BaseDirectory; var xmlPath = Path.Combine(basePath, "Tiger.Api.xml"); c.IncludeXmlComments(xmlPath); @@ -108,19 +113,20 @@ app.UseSwagger(); app.UseSwaggerUI(c => { - c.SwaggerEndpoint($"/swagger/{version}/swagger.json", $"Share API {version}"); + c.SwaggerEndpoint($"/swagger/{version}/swagger.json", $"Tiger API {version}"); }); app.UseRouting(); app.UseCors(anyAllowSpecificOrigins);//鏀寔璺ㄥ煙锛氬厑璁哥壒瀹氭潵婧愮殑涓绘満璁块棶 //app.UseHttpsRedirection(); + app.UseStaticFiles(); //app.UseAuthorization(); app.UseEndpoints(endpoints => { + endpoints.MapControllerRoute(name: "default", pattern: "{controller=Home}/{action=Index}/{id?}").RequireCors(anyAllowSpecificOrigins); endpoints.MapControllers().RequireCors(anyAllowSpecificOrigins); - //endpoints.MapControllers(); }); ConsoleExt.Write($"Api Run as{((ApiConfig.IsDevVersion || ApiConfig.IsTestVersion) ? ((ApiConfig.IsDevVersion ? " Dev" : "") + (ApiConfig.IsTestVersion ? " Test" : "")) : " Release")} Edition", ConsoleColor.Cyan); @@ -143,6 +149,7 @@ (BizConfig.Configuration[$"Databases:Main:ConnectionString"].Split(';').Any(q => q.Contains("port")) ? "锛�" : "") + BizConfig.Configuration[$"Databases:Main:ConnectionString"].Split(';').Where(q => q.Contains("Data Source") || q.Contains("DataSource") || q.Contains("database")).FirstOrDefault(), ConsoleColor.Cyan); } + //鍒濆鍖朆usiness鐨凙utoFacContainer DI.Resolve<IBiz>().SetContainer(AutoFacContainer.Instance); //寮�鍚疉pi鐩戞帶鎬荤嚎 @@ -151,6 +158,8 @@ DI.Resolve<IServicesBus>().StartServices(app.ApplicationServices.GetService<ISchedulerFactory>()); //寮�鍚疍B缂撳瓨鑷姩鏇存柊 DI.Resolve<IDbCacheBus>().StartAutoUpdate(); + //寮�鍚疢QTT鏈嶅姟 + MQTTHelper.Start(); } /// <summary> @@ -159,14 +168,18 @@ public void DeleteLogs() { DirectoryInfo di = new DirectoryInfo(AppDomain.CurrentDomain.BaseDirectory + "\\Logs"); - var logFiles = di.GetFiles("*.log", SearchOption.AllDirectories); - foreach (var file in logFiles) + if(di.Exists) { - if ((DateTime.Now - file.LastWriteTime).TotalDays > 30) + var logFiles = di.GetFiles("*.log", SearchOption.AllDirectories); + foreach (var file in logFiles) { - file.Delete(); + if ((DateTime.Now - file.LastWriteTime).TotalDays > 30) + { + file.Delete(); + } } } + } }//endClass } \ No newline at end of file -- Gitblit v1.9.3