AuthorizationHandlerContextExtensions.cs
955 Bytes
using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Http;
using Microsoft.AspNetCore.Mvc.Filters;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace HHECS.WebCommon.AuthorizationExtensions
{
/// <summary>
/// 从当前授权上下文中获取http上下文
/// </summary>
public static class AuthorizationHandlerContextExtensions
{
public static DefaultHttpContext GetCurrentHttpContext(this AuthorizationHandlerContext context)
{
if (context.Resource is AuthorizationFilterContext authorizationFilterContext)
{
return (DefaultHttpContext)authorizationFilterContext.HttpContext;
}
if (context.Resource is DefaultHttpContext defaultHttpContext)
{
return defaultHttpContext;
}
return null;
}
}
}