转-C#让枚举返回字符串
下面的手段是使用给枚举项打标签的方式,来返回字符串
下面分别定义一个属性类,和一个枚举帮助类
- [AttributeUsage(AttributeTargets.Field,AllowMultiple = false)]
- public sealed class EnumDescriptionAttribute : Attribute
- {
- private string description;
- public string Description { get { return description; } }
- public EnumDescriptionAttribute(string description)
- : base()
- {
- this.description = description;
- }
- }
- public static class EnumHelper
- {
- public static string GetDescription(Enum value)
- {
- if (value == null)
- {
- throw new ArgumentException("value");
- }
- string description = value.ToString();
- var fieldInfo = value.GetType().GetField(description);
- var attributes =
- (EnumDescriptionAttribute[]) fieldInfo.GetCustomAttributes(typeof (EnumDescriptionAttribute), false);
- if (attributes != null && attributes.Length > 0)
- {
- description = attributes[0].Description;
- }
- return description;
- }
- }
使用举例:
- enum Week
- {
- [EnumDescription("星期一")]
- Monday,
- [EnumDescription("星期二")]
- Tuesday
- }
- //下面打印结果为: 星期一
- Console.WriteLine(EnuHelper.GetDescription(Week.Monday))
转-C#让枚举返回字符串的更多相关文章
- C# 让枚举返回字符串
下面的手段是使用给枚举项打标签的方式,来返回字符串 分别定义一个属性类,一个枚举帮助类 /// <summary> /// 自定义属性 /// </summary> [Attr ...
- c# 枚举返回字符串操作
//内部类public static class EnumHelper { public static string GetDescription(Enum value) { if (value == ...
- ajax的使用:(ajaxReturn[ajax的返回方法]),(eval返回字符串);分页;第三方类(page.class.php)如何载入;自动加载函数库(functions);session如何防止跳过登录访问(构造函数说明)
一.ajax例子:ajaxReturn("ok","eval")->thinkphp中ajax的返回值的方法,返回参数为ok,返回类型为eval(字符串) ...
- mvc webapi 返回字符串自动加双引号
来自:http://www.cnblogs.com/David-Huang/p/4351023.html 返回字符串,突然碰到双引号号问题,幸亏有人解决了. 返回XMLDocument类型,默认会解析 ...
- C# 枚举、字符串、值的相互转换
using System; class Program{ public enum Color { Red = 0xff0000 , Orange = ...
- SqlSever基础 Upper函数 返回字符串的大写形式
镇场诗:---大梦谁觉,水月中建博客.百千磨难,才知世事无常.---今持佛语,技术无量愿学.愿尽所学,铸一良心博客.------------------------------------------ ...
- SqlSever基础 lower函数 返回字符串的小写形式
镇场诗:---大梦谁觉,水月中建博客.百千磨难,才知世事无常.---今持佛语,技术无量愿学.愿尽所学,铸一良心博客.------------------------------------------ ...
- SpringMVC3的ResponseBody返回字符串(JSON)乱码问题解决
近日做一个小项目,用spring mvc 做到ajax请求获取jquery ztree 异步获取树返回json对象时出现了乱码,试了各种办法,查了各种资料,一开始以为是数据库的编码有问题,经测试没问题 ...
- recurse_array_change_key_case()递规返回字符串键名全为小写或大写的数组
//递归返回字符串键名全为小写或大写的数组function recurse_array_change_key_case(&$input, $case = CASE_LOWER){ if( ...
随机推荐
- 查看并更改mysql编码
show variables like 'character%'; set character_set_client=utf8 ; set character_set_connection=utf8 ...
- javascript的事件
前戏 今天在博客中看到了javascript的事件机制,就自己试试写一个简单的冒泡捕获测试,但是测试结果出乎了我的意料,主要是自己原来对事件了解不是很清楚,现在写篇博客记录下. 基础 先来看一下我在A ...
- (整理)IIS 7 503 "service unavailable" errors
原文地址:http://mvolo.com/where-did-my-iis7-server-go-troubleshooting-503-quotservice-unavailablequot-er ...
- 46. Partition List
Partition List Given a linked list and a value x, partition it such that all nodes less than x come ...
- [LINUX] 查看连接数和IO负载
Iostat 是 sysstat 工具集的一个工具,需要安装. Centos的安装方式是: yum install sysstat Ubuntu的安装方式是: aptitude install sys ...
- java web项目获取各种路径
1.可以在servlet的init方法里 String path = getServletContext().getRealPath("/"); 这将获取web项目的全路径 例如 ...
- AS
1.修改注释模板: “File“->“Settings” File and Code Templates 然后选中Includes tab下面的File Header. 2.代码提 ...
- JAVA的Random类[转]
在实际的项目开发过程中,经常需要产生一些随机数值,例如网站登录中的校验数字等,或者需要以一定的几率实现某种效果,例如游戏程序中的物品掉落等. 在Java API中,在java.util包中专门提供了一 ...
- 聊聊javascript中的面向对象
面向对象这个东西一直晕晕乎乎的,正好这段时间没有活,可以好好整理整理了! 1.什么是对象? 其实这个说起来一切东西都是对象 2.目前我们使用对象的时候,使用的是两种设计模式杂糅起来的 分别是原型模式和 ...
- Windows7 IE10运行不了JavaScript的问题
如题,我的环境是Windows7 + IE10,JavaScript怎么也运行不了.郁闷了好一段时间. 后来发现一种办法终于可以让JavaScript运行起来. 具体: 点击 [工具] => ...