作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有以下枚举:
public enum ReferenceKey {
MenuType = 1,
ReferenceStatus = 2,
ContentType = 3
}
有没有一种方法可以将这些数据列为 IEnumerable两个领域。第一个字段为数字,第二个字段为在第一个和第二个单词之间有一个空格的字符串,如:
1 "Menu Type"
2 "Reference Status"
3 "Content Type"
最佳答案
Is there a way that I can list this data as an IEnumerable with two fields. The first field for the number and the second for the string with a space between the first and second word
为什么不
解决方案 2:您想要的数组
IEnumerable<ReferenceKey> v =
Enum.GetValues(typeof(ReferenceKey)).Cast<ReferenceKey>();
string[] result =
v.Select(x => (int)x + " \"" + x.ToString() + " \"").ToArray();
看到它工作
解决方案 2:A Dictionary<int, string>
string[] str = Enum.GetNames(typeof(ReferenceKey));
Dictionary<int, string> lst = new Dictionary<int, string>();
for (int i = 0; i < str.Length; i++)
lst.Add((int)(ReferenceKey)Enum.Parse(typeof(ReferenceKey), str[i]), str[i]);
看到它工作
解决方案 3:另一种创建 Dictionary<int, string>
的方法
Array v = Enum.GetValues(typeof(ReferenceKey));
Dictionary<int, string> lst = v.Cast<ReferenceKey>()
.ToDictionary(x => (int)x,
x => x.ToString());
包括System.Linq
这个的命名空间
看到它工作
关于c# - 如何从枚举中提取数据并将其放入 IEnumerable 中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12436367/
我是一名优秀的程序员,十分优秀!