Authorization.cs 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. using Fuel.Application.Service;
  2. using FuelServer.Core.Entity;
  3. using Microsoft.Extensions.DependencyInjection;
  4. using Org.BouncyCastle.Asn1.Ocsp;
  5. using System;
  6. using System.Collections.Generic;
  7. using System.Linq;
  8. using System.Text;
  9. using System.Threading.Tasks;
  10. namespace Fuel.Core
  11. {
  12. public class Authorization
  13. {
  14. private static IUserService _userService;
  15. public Authorization(IUserService userService)
  16. {
  17. _userService = ServiceLocator.GetRequiredService<IUserService>();
  18. }
  19. public static List<string> GetPermissions()
  20. {
  21. var permissions = _userService.GetUserPermissions();
  22. return permissions;
  23. }
  24. }
  25. public static class ServiceLocator
  26. {
  27. public static IServiceProvider ServiceProvider { get; set; }
  28. public static T GetRequiredService<T>() where T : notnull
  29. {
  30. if (ServiceProvider == null)
  31. {
  32. throw new InvalidOperationException("");
  33. }
  34. return ServiceProvider.GetRequiredService<T>();
  35. }
  36. }
  37. }