来源:https://blog.csdn.net/lwplvx/article/details/113614095
var endpoint = httpContext.GetEndpoint(); if (endpoint != null) { var permissionAttribute = endpoint.Metadata.GetMetadata<PermissionsAttribute>(); }
这样就可以获取标记在Controller的Action上面的自定义Attribute了:
/// <summary> /// 查询全部角色 /// </summary> /// <returns></returns> [HttpPost] [Permissions("0102_View")] public JsonResult GetAllSysRoles([FromBody] SysRoleParaDto dto){ //... }
自定义Attribute
namespace XCGWebApp.Attributes { [System.AttributeUsage(System.AttributeTargets.Method, AllowMultiple = false)] public class PermissionsAttribute : System.Attribute { public PermissionsAttribute() { PermissionCodes = ""; } public PermissionsAttribute(string permissionCodes) { PermissionCodes = permissionCodes; } /// <summary> /// 权限编码,英文逗号分隔。 /// </summary> public string PermissionCodes { get; set; } = string.Empty; } }
浙公网安备 33010602011771号