首页 / 知识
关于c#:将枚举转换为人类可读的值
2023-04-12 08:43:00

Convert enums to human readable values有谁知道如何将枚举值转换为人类可读的值? 例如:
从某位Ian Horwill很久以前在博客文章中留下的vb代码片段转换为此代码……我已经在生产中成功使用了此代码。
(需要'使用System.Text.RegularExpressions;') 从而:
会回来的
与提供Description属性相比,它要简单得多,而且冗余程度也较低。 属性仅在需要提供间接层(问题未要求的地方)时才有用。 在C#中,Enums上的.ToString相对较慢,与GetType()。Name相当(它甚至可以在幕后使用)。 如果您的解决方案需要非常快速或高效,那么最好将转换缓存在静态字典中,然后从那里查找它们。 @Leon代码的一小部分改编以利用C#3。作为枚举的扩展,这确实有意义-如果您不想将所有枚举弄乱,则可以将其限制为特定类型。
您可以继承System.Reflection的" Attribute"类来创建自己的" Description"类。像这样(从这里开始):
我见过的大多数示例都涉及用[Description]属性标记您的枚举值,并使用反射在值和描述之间进行"转换"。这是关于它的旧博客文章: http://geekswithblogs.net/rakker/archive/2006/05/19/78952.aspx 您也可以看一下这篇文章:http://www.codeproject.com/KB/cs/enumdatabinding.aspx 它专门用于数据绑定,但是显示了如何使用属性来修饰枚举值,并提供了一种" GetDescription"方法来检索属性的文本。使用内置的description属性的问题在于该属性还有其他用途/用户,因此有可能该描述出现在您不希望出现的位置。自定义属性解决了该问题。
向每个枚举添加
尽管这意味着描述与实际值相距甚远,但是它允许您使用本地化为每种语言打印不同的字符串,例如在我的 我发现最好用低分来定义您的枚举值,因此ThisIsValueA将为This_Is_Value_A,然后您可以执行enumValue.toString()。Replace(" _",""),其中enumValue是您的变量。 |
最新内容
相关内容
Python文件如何转换为字符串
Python文件如何转换为字符串,数据,主体,名字,培训,文件,字符串,末尾,方法,对象,语句,python文件如何转换为字符串的方法:一、最方便的方法是一Python元组怎么转换成列表
Python元组怎么转换成列表,培训,列表,对象,示例,中将,以上,方法,更多,内容,python中将元组转换成列表的方法是使用list()进行转换。使用示例python中字符串怎么转换成int
python中字符串怎么转换成int,情况,培训,字符串,浮点,错误,类型,不是,臣妾,字面,函数,将字符串转换成,整型,从字面理解很容易让人误会。比如,要python常见的数据类型转换函数有哪
python常见的数据类型转换函数有哪些?,培训,数据类型,函数,python怎么样将字符串转换字符
python怎么样将字符串转换字符,培训,字符串,字符,元素,索引,以上,更多,内容,列表,python中一个字符串也可以看成是一个列表,字符串中的每个元python如何进行类型转换的
python如何进行类型转换的,培训,数字,类型,字符串,整数,函数,对象,和数,变量,字符,python提供了将变量或值从一种类型转换成另一种类型的内置python怎么处理Python字符编码转换
python怎么处理Python字符编码转换?,培训,长城,系统,字符,意义,方式,这一点,字符串,字节,表示,python有strobject和unicodeobject两种字符串,python怎么将图片转换成base64编码
python怎么将图片转换成base64编码,培训,图片,数据,数字,字符串,字符,接口,模块,功能,方法,该模块提供了基于rfc3548的Base16,32,64编解码的python怎么转换字符串大小写
python怎么转换字符串大小写,培训,数字,字符,字符串,字母,方法,大写字母,大小写,单词,变量,python中的字符串方法是从python1.6到2.0慢慢加进python如何转换为私有属性
python如何转换为私有属性,名称,培训,属性,方法,之前,跳高,实例,表示,以上,规则,python如何转换为私有属性1、在属性或方法名称之前增加一个python美元转换成人民币转换代码
python美元转换成人民币转换代码,人民币,美元,代码,货币,培训,表示,小数点,空格,数值,符号,python美元转换成人民币转换代码1、说明程序可以python有哪些大小写转换方法
python有哪些大小写转换方法,培训,字符串,方法,字符,字母,大写字母,大小写,长度,单词,大小,python中有哪些大小写转换方法1、lower()方法,大写