c# - 如何将枚举数组放入授权属性中?

标签 c# enums authorization

我正在尝试做这样的事情:

   [CustomAuthorize(Permissions = new[] { /*These are Enums */Permissions.CanChangeProducts.ToString(), Permissions.CanChangeNames.ToString()})]
    public ActionResult MyMethod()
    {
        return View();
    }

它给出了错误:

错误5 属性参数必须是属性参数类型的常量表达式、typeof表达式或数组创建表达式[...]

我已经设法将 Resource 字符串放入 validationattibutes,但我无法将此枚举(字符串)数组放入 authorize 属性中......我该怎么做?任何帮助将不胜感激!

最佳答案

enum.Value | enum.Value | enum.Value

标志呢?

像这样:

[AttributeUsage(AttributeTargets.Class | AttributeTargets.Constructor | AttributeTargets.Enum)]

编辑: 顺便说一下,有一个非常有趣的答案:https://stackoverflow.com/a/270231/2524304

关于c# - 如何将枚举数组放入授权属性中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17844041/

相关文章:

c# - Azure Functions 不会被 VS 发布的新内容覆盖吗?

c# - 检查网页是否在平板电脑上运行

java - 关于 java 枚举的一个不好的做法

java - Java EE 服务器上的动态角色

c# - 为动态连接字符串设置 Entity Framework

c# - C#中的 'closures'是什么?

java - 在枚举中使用 compareTo

python - 向 Python enum.IntEnum 添加属性和起始值

ruby-on-rails-3 - Rails cancan load_and_authorize_resource 不工作

ios - iOS Square Connect商家授权问题