.netcore若依框架权限判断问题
YiSha.Web\YiSha.Admin.Web\Filter 里面的AuthorizeFilterAttribute
string[] authorizeList = Authorize.Split(',');
TData<List
. 使用 Any() 替换 Contains()(如果权限字符串可能包含多个权限值)
如果 p.Authorize 是一个由多个权限拼接的字符串,例如 "system:autojob:add,system:autojob:edit",你可以使用 Any() 来判断它是否包含 authorizeList 中的任意权限值:
List<MenuAuthorizeInfo> authorizeInfoList = objMenuAuthorize.Data
.Where(p => authorizeList.Any(auth => p.Authorize.Contains(auth)))
.ToList();
//List<MenuAuthorizeInfo> authorizeInfoList = objMenuAuthorize.Data.Where(p => authorizeList.Contains(p.Authorize)).ToList();