c# - 属性参数必须是属性参数类型 enum 的常量表达式、typeof 表达式或数组创建表达式 说明

标签 c# .net resx

我试图从 resx 文件中提取枚举的描述,但出现上述错误。

这是我的代码:

public enum FinalStatus
{
    [Description(StringResources.MyStrings.Status_0)]
    Error = 0,
    [Description(StringResources.MyStrings.Status_1)]
    Ok = 1,
    [Description(StringResources.MyStrings.Status_5)]
    Warning = 2,
    [Description(StringResources.MyStrings.Status_4)]
    Unknown = 3
}

最佳答案

错误正确;这些值需要是常量。您需要将 Status_n 定义更改为更像这样的内容:

namespace StringResources{
    public class MyStrings{
        public const string Status_0 = "0";
        public const string Status_1 = "1";
        public const string Status_4 = "4";
        public const string Status_5 = "5";
    }
}

关于c# - 属性参数必须是属性参数类型 enum 的常量表达式、typeof 表达式或数组创建表达式 说明,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19578368/

相关文章:

c# - Metro 风格 WinRT XAML 应用中 SemanticZoom 中 ZoomedOutView 的奇怪定位

c# - 在运行时将 CSS 添加到 ASP.net 母版页。

c# - 无法解析与数据库的连接

c# - Resx 文件的本地化替代方案

.net - 如何嵌套资源标识符?

C# 使用 bool 函数将列表拆分为两个列表

c# - 如何在我的字符串中插入 '-'?

c# - 方法的缓存属性?

c# - System.Dynamic 错误?

c# - resx 文件是否适合为不同客户定制?