Program.cs 2.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485
  1. using IMCS.CCS.Services;
  2. using Microsoft.EntityFrameworkCore;
  3. using Quartz.Impl;
  4. using Quartz;
  5. using StackExchange.Redis;
  6. using System.ComponentModel.Design;
  7. using WCS.Common;
  8. using WCS.Repository;
  9. using WCS.Service;
  10. using WCS.Service.Impl;
  11. using WCS.Services;
  12. using Quartz.Spi;
  13. using GZY.Quartz.MUI.Extensions;
  14. using GZY.Quartz.MUI.BaseService;
  15. var builder = WebApplication.CreateBuilder(args);
  16. builder.Services.AddQuartzUI();
  17. //添加本地调度任务访问
  18. builder.Services.AddQuartzClassJobs();
  19. // Add services to the container.
  20. // Redis
  21. var redisConfiguration = builder.Configuration.GetConnectionString("Redis");
  22. builder.Services.AddSingleton<IConnectionMultiplexer>(ConnectionMultiplexer.Connect(redisConfiguration));
  23. var connectionString = builder.Configuration.GetConnectionString("MySqlConnection");
  24. builder.Services.AddDbContext<ApplicationDbContext>(options =>
  25. options.UseMySql(connectionString, ServerVersion.AutoDetect(connectionString)));
  26. builder.Services.AddControllers();
  27. // Learn more about configuring Swagger/OpenAPI at https://aka.ms/aspnetcore/swashbuckle
  28. builder.Services.AddEndpointsApiExplorer();
  29. builder.Services.AddSwaggerGen();
  30. // Repository
  31. builder.Services.AddScoped<IDeviceRepository, DeviceRepository>();
  32. builder.Services.AddScoped<ITaskCallbackRepository, TaskCallbackRepository>();
  33. builder.Services.AddScoped<IWcsActionAddressRepository, WcsActionAddressRepository>();
  34. builder.Services.AddScoped<IWcsActionRepository, WcsActionRepository>();
  35. builder.Services.AddScoped<IWcsTagValueRepository, WcsTagValueRepository>();
  36. // Service
  37. builder.Services.AddScoped<ITaskService, TaskService>();
  38. builder.Services.AddScoped<ITaskCallbackService, TaskCallbackService>();
  39. builder.Services.AddScoped<IWcsActionAddressService, WcsActionAddressService>();
  40. builder.Services.AddScoped<IWcsActionService, WcsActionService>();
  41. builder.Services.AddScoped<IDeviceService, DeviceService>();
  42. builder.Services.AddScoped<IWcsTagValueService, WcsTagValueService>();
  43. builder.Services.AddScoped<IApiRequestService, ApiRequestService>();
  44. var app = builder.Build();
  45. //Admin 123456
  46. app.UseQuartzUIBasicAuthorized();
  47. app.UseQuartz();
  48. if (app.Environment.IsDevelopment())
  49. {
  50. app.UseDeveloperExceptionPage();
  51. app.UseSwagger();
  52. app.UseSwaggerUI(c => c.SwaggerEndpoint("/swagger/v1/swagger.json", "Your API V1"));
  53. }
  54. app.UseStaticFiles();
  55. app.UseDefaultFiles();
  56. app.UseRouting();
  57. app.MapControllers();
  58. app.Run();