Startup.cs 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. using System.Diagnostics;
  2. using Admin.NET.Plugin.AiDOP.Entity;
  3. using Admin.NET.Plugin.AiDOP.Infrastructure;
  4. using Microsoft.AspNetCore.Builder;
  5. using Microsoft.AspNetCore.Hosting;
  6. using Microsoft.Extensions.DependencyInjection;
  7. using Microsoft.Extensions.Hosting;
  8. using SqlSugar;
  9. namespace Admin.NET.Plugin.AiDOP;
  10. /// <summary>
  11. /// AiDOP 插件启动配置(按需扩展 DI)
  12. /// </summary>
  13. [AppStartup(900)]
  14. public class Startup : AppStartup
  15. {
  16. public void ConfigureServices(IServiceCollection services)
  17. {
  18. }
  19. /// <summary>
  20. /// 开发环境下为 Demo 表执行 CodeFirst(表已存在则跳过变更,行为取决于 SqlSugar 配置)。
  21. /// </summary>
  22. public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
  23. {
  24. try
  25. {
  26. AidopMenuLinkSync.EnsureLinked(app.ApplicationServices);
  27. }
  28. catch (Exception ex)
  29. {
  30. Trace.TraceWarning("Ai-DOP AidopMenuLinkSync: " + ex);
  31. }
  32. if (!env.IsDevelopment())
  33. return;
  34. using var scope = app.ApplicationServices.CreateScope();
  35. var db = scope.ServiceProvider.GetRequiredService<ISqlSugarClient>();
  36. db.CodeFirst.InitTables(typeof(AdoOrder), typeof(AdoPlan), typeof(AdoWorkOrder));
  37. }
  38. }