0
// [RequiredPermission(Permissions.ProjectManagement | Permissions.UserManagement)] //doesn't work
// [RequiredPermission(Permissions.UserManagement)] //works
[RequiredPermission(Permissions.ProjectManagement)] //works
public ActionResult Index() {}

使用上述方法的属性,我似乎无法按位或工作。我认为 or will work here 谁能解释为什么它不可以?

因为这有效:[RequiredPermission(Permissions.UserManagement)]

这有效:[RequiredPermission(Permissions.ProjectManagement)]

但这不是:[RequiredPermission(Permissions.ProjectManagement | Permissions.UserManagement)]

它不会抛出任何异常?

这是我们的标志:

[Flags]
    public enum Permissions : int
    {
        None = 0x0,
        Recruiting = 0x1,
        ProjectManagement = 0x2,
        UserManagement = 0x4,
        SystemManagement = 0x8,
    }

有没有其他方法可以做到这一点?

我试图要求任何一个许可才能进入。它不起作用意味着它不会让 ProjectManagement 用户一起使用它们。像 [RequiredPermission(Permissions.ProjectManagement | Permissions.UserManagement)]。不抛出异常。

4

0 回答 0