如果ASP.NET Core 2.2的授权属性与角色无法正常工作,可以尝试以下解决方法:
services.AddAuthentication()
.AddCookie();
services.AddAuthorization();
services.AddDefaultIdentity()
.AddRoles()
.AddEntityFrameworkStores();
services.AddAuthorization(options =>
{
options.AddPolicy("RequireAdminRole", policy =>
policy.RequireRole("Admin"));
});
[Authorize(Roles = "Admin")]
public IActionResult AdminPage()
{
return View();
}
请注意,这些解决方法是基于ASP.NET Core 2.2的常见问题和最佳实践提供的。如果问题仍然存在,请确保已正确配置身份验证、授权服务、角色和授权策略,并根据具体情况进行进一步的调试和排查。