HttpContext2.cs 900 B

123456789101112131415161718192021222324
  1. using Microsoft.AspNetCore.Http;
  2. using System;
  3. namespace Masuit.Tools.Core.Net
  4. {
  5. /// <summary>
  6. /// 实现类似于.NET Framework中的HttpContext静态对象,使用前需要在Startup中注入,ConfigureServices方法中:services.AddStaticHttpContext();,Configure方法中:app.UseStaticHttpContext();
  7. /// </summary>
  8. public static class HttpContext2
  9. {
  10. [ThreadStatic]
  11. private static IHttpContextAccessor _accessor;
  12. /// <summary>
  13. /// 获取当前禽求上下文,使用前需要在Startup中注入,ConfigureServices方法中:services.AddStaticHttpContext();,Configure方法中:app.UseStaticHttpContext();
  14. /// </summary>
  15. public static HttpContext Current => _accessor.HttpContext;
  16. internal static void Configure(IHttpContextAccessor accessor)
  17. {
  18. _accessor = accessor;
  19. }
  20. }
  21. }