C#多枚举值的写法与读法】的更多相关文章

首先,定义枚举的时候必须是2,4,8,16这种2的次方的值. using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace ConsoleApplication1 { , Value1 = , Value2 = , Value3 = , Value4 = , Value5 = }; class Program { static void Main(string[] a…
好长时间没有写博文了,今天继续. 这次跟大家分享的内容起因于对一个枚举值列表的序列化,下面简化后的代码即能重现.为了明确起见,我显式指定了枚举的基础类型. // 定义一个枚举类型. public enum SomeEnum :int { First, Second, Third, ... ... } // 重现问题的代码. var list = new List<SomeEnum>(); ; i < ; ++i) { list.Add((SomeEnum)(i % )); } var f…
classDeclaration { QueryBuildRange qbrLocationType; } datasource.init() { super(); qbrLocationType = WMSLocation_ds.query().datasourceNo(1).addRange(fieldnum(WMSLocation,HV_LocationType)); } datasource.executeQuery() { ;     qbrLocationType.value(que…
/// <summary> /// 获取枚举值上的Description特性说明 /// </summary> /// <typeparam name="T">枚举类型</typeparam> /// <param name="obj">枚举值</param> /// <returns></returns> public static string GetDescript…
记得刚出道的时候, 有考虑怎么面试, 以及可能会遇到的面试题, 有一个人说了一下 八皇后问题, 据说要用 sql 语句写出来, 暂时我 写了一个C#版本的, 经测验,八皇后算法结果为 92种, 这个与 网上公布的答案一致. 当然我这种做法只是枚举值, 算不上什么 算法, 若有 人看到我的这篇文章,还望给出其他 的 算法, 比如递归解法,回溯解法. 源代码下载:  ConEightHH.rar…
一.背景 在MVC3项目里,如果Action的参数中有Enum枚举作为对象属性的话,使用POST方法提交过来的JSON数据中的枚举值却无法正确被识别对应的枚举值. 二.Demo演示 为了说明问题,我使用MVC3项目创建Controller,并且创建如下代码演示: //交通方式枚举 public enum TrafficEnum { Bus = , Boat = , Bike = , } public class Person { public int ID { get; set; } publi…
在C#中,有时候我们需要读取枚举值的描述属性,也就是说这个枚举值代表了什么意思.比如本文中枚举值 Chinese ,我们希望知道它代表意思的说明(即“中文”). 有下面的枚举: 1 2 3 4 5 6 public enum EnumLanugage {     [System.ComponentModel.Description("中文")]     Chinese,     English } 我们要获取的就是 Chinese 中的说明文字“中文”. 1 2 3 4 5 6 7 8…
System.ComponentModel命名空间下有个名为DescriptionAttribute的类用于指定属性或事件的说明,我所调用的枚举值描述信息就是DescriptionAttribute类的Description属性值. 首先定义一个枚举 /// <summary>    /// 测试用的枚举    /// </summary>    public enum ArticleTypeList    {        [DescriptionAttribute("…
一.引言 枚举为我看日常开发的可读性提供的非常好的支持,但是有时我们需要得到枚举值得描述信息或者是注释(备注)信息 比如要获得 TestEmun.aaa 属性值得备注 AAA,比较不方便得到. public enum TestEmun     { /// AAA       aaa =1,       /// BBB       bbb =2,       /// CCC       ccc =3     } 如果要得到类似的效果,我们就需要修改一下代码了,使用反射很容易得到这个结果. 二.定义…
这个消息比较实用也很关键,它代表非显示区域命中测试.这个消息优先于所有其他的显示区域和非显示区域鼠标消息.其中lParam参数含有鼠标位置的x和y屏幕坐标,wParam 这里没有用. Windows应用程序通常把这个消息传送给DefWindowProc,然后Windows用WM_NCHITTEST消息产生与鼠标位置相关的所有其他鼠标消息.通俗的讲从消息产生消息. case WM_NCHITTEST: return (LRESULT)HTNOWHERE; 以上代码能禁用窗口的所有显示区域和非显示区…
原文:获取Enum枚举值描述的几法方法 1.定义枚举时直接用中文 由于VS对中文支持的很不错,所以很多程序员都采用了此方案. 缺点:1.不适合多语言 2.感觉不太完美,毕竟大部分程序员大部分代码都使用英文 2.利用自定义属性定义枚举值的描述(博客园-大尾巴狼) 缺点:不适合多语言 原文:http://www.cnblogs.com/hilite/archive/2006/03/28/360793.html 枚举定义: [EnumDescription("订单.订单中的产品.产品项的状态.&quo…
)             {                 ] >=  && ipvals[] <=                  && ipvals[] >=  && ipvals[] <=                  && ipvals[] >=  && ipvals[] <=                  && ipvals[] >=  &…
c#枚举值增加特性说明 通过特性给一个枚举类型每个值增加一个字符串说明,用于打印或显示. 自定义打印特性 [AttributeUsage(AttributeTargets.Field)] public class EnumDisplayAttribute : Attribute { public EnumDisplayAttribute(string displayStr) { Display = displayStr; } public string Display { get; privat…
大熊猫猪·侯佩原创或翻译作品.欢迎转载,转载请注明出处. 如果觉得写的不好请多提意见,如果觉得不错请多多支持点赞.谢谢! hopy ;) 我们知道在SpriteBuilder中是无法直接给一个CCB文件的root节点修改位置类型和位置的. 我们只有在代码中修改上述属性. 但是在旧版的Swift中对于Objc中的常量枚举值会提示找不到,你可以在这个讨论帖子中了解到详情: https://github.com/spritebuilder/SpriteBuilder/issues/1346 所以之前我…
使用Spring时总去查HTTP状态码对应的Spring枚举值的那篇代码,有点不方便,把代码拷贝出来统一替换格式做成了表格,放在这里,方便大家使用.(枚举类为HttpStatus) 枚举值 HTTP状态码 提示信息 备注 CONTINUE 100 "Continue" SWITCHING_PROTOCOLS 101 "Switching Protocols" PROCESSING 102 "Processing" CHECKPOINT 103 &…
枚举值的作用:枚举限制了变量要有一些预先定义的值,运用枚举值可以大大减少你的代码中的漏洞,举例来说,如果我们想为一家鲜榨果汁店编个程序,就可以将杯子的尺寸限制为小中和大.这样就可以确保人们不会定大中小尺寸之外的了. package test; public class Juice { public static void main(String []args){ FreshJuice juice = new FreshJuice(); juice.size = FreshJuice.FreshJ…
很多时候,我们的枚举值可能需要中英文, 那么可以使用下面的方法: 下面这个类,包含2部分. 1 BaseDescriptionAttribute特性的重载 2 枚举的操作类 EnumOperate namespace TestMVC.Lang { public class BaseDescriptionAttribute : DescriptionAttribute { public BaseDescriptionAttribute(string descriptionCN) : base(de…
当实体类中entity/DTO/VO等类中,有枚举值,应该怎么输出? 问题: orderStatus 和 payStatus都是枚举类,并且枚举的个数达地10来个,我们不可能在模板页面(jsp/ftl/html)等页面进行多大10多项的if判断,去一个一个的判断值,假如以后随着业务的增多,枚举个数越来越多,改怎么办?   /**订单*/ @Data //get/set //将值是null的数据剔除 @JsonInclude(JsonInclude.Include.NON_NULL) public…
1.定义枚举类型 public enum Test { 男 = , 女 = } 2.获取枚举值 public void EnumsAction() { var s = Test.男;//男 var a = Test.男.ToString();//"男" ;//女 var x = (Test)Enum.Parse(typeof(Test), "男");//男 var x2 = Enum.Parse(typeof(Test), "男");//男 );…
一.定义一个类 using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Reflection; namespace XXX.XXX.Utils { /// <summary> /// 备注特性 /// </summary> public class DescAttribute : A…
我们在开发过程中经常会遇到需要将枚举值转换成名称进行显示的情况.如下我们有这样一个数据源对象: var users = [ {id: 1, name: "similar1", status: 1}, {id: 2, name: "similar2", status: 2} ]; 其中字段 status 代表的是用户的状态, 1 代表 “可用”, 2 代表 “禁用”.我们使用 kendo grid 常规配置如下: columns: [ { field: "i…
封装了方法: public static class EnumOperate { public class BaseDescriptionAttribute : DescriptionAttribute { public BaseDescriptionAttribute(string descriptionCN) : base(descriptionCN) { } public BaseDescriptionAttribute(string descriptionCN, string descr…
从ASP.NET MVC 5开始,Html.DropDownListFor已经提供了对Enum的支持,但在这以前,需要通过帮助方法或扩展方法来让Html.DropDownListFor显示枚举值. 本篇解决在ASP.NET MVC 4 下Html.DropDownListFor显示默认项的问题. 以上,使用Select是通过Html.DropDownListFor来实现的,Select的选项值是从枚举中读出.可以看到,某个枚举值成了默认选项,而我想让"==请选择=="成为Select的…
WCF支持枚举,不过在个别场景下会出现服务消费失败,如:传递或返回的枚举值(本质是int或其它)没有在枚举中定义.这种异常还很难定位,出现这种情况一般是因为BUG,因此简单的放弃使用枚举可能不是一个明智的做法.…
Java进阶知识点1:白捡的扩展性 - 枚举值也是对象   一.背景 枚举经常被大家用来储存一组有限个数的候选常量.比如下面定义了一组常见数据库类型: public enum DatabaseType { MYSQL, ORACLE, SQLSERVER } 当围绕这一组常量出现功能上的扩展点时,很多人的做法是为新的功能编写一个新类,新类中依赖该枚举类型. 比如要在界面上显示常见数据库类型的官方名称,可以用如下类实现这一功能: public class DatabaseNameParser {…
一.背景 枚举经常被大家用来储存一组有限个数的候选常量.比如下面定义了一组常见数据库类型: public enum DatabaseType { MYSQL, ORACLE, SQLSERVER } 当围绕这一组常量出现功能上的扩展点时,很多人的做法是为新的功能编写一个新类,新类中依赖该枚举类型. 比如要在界面上显示常见数据库类型的官方名称,可以用如下类实现这一功能: public class DatabaseNameParser { public String getDatabaseName(…
在SQL SERVER字段采用枚举值作为字段后,如果直接查看字段的值是很难判断这个字段的带表什么意思, 在这里介绍如用函数的方法实现枚举值分割,只有分割后才很方便知道枚举值的意思. 一.问题说明 1.如下为:单个枚举值清单如下 十进制带表枚举的值,每个值带表对应的工厂 单枚举: 1带表P1工厂,2带表P2工厂     ----通过对应,一眼看到对应关系 叠加枚举: 3带表P1与P2工厂                     ----简单叠加枚举,难度增大了就是不容易找到对应关系 难度再加大一点…
1. 高频枚举值或结构体 1.1 SDL_WindowFlags /** * \brief The flags on a window * * \sa SDL_GetWindowFlags() */ typedef enum { /* !!! FIXME: change this to name = (1<<x). */ SDL_WINDOW_FULLSCREEN = 0x00000001, /**< fullscreen window */ SDL_WINDOW_OPENGL = 0x…
/// <summary> /// 枚举扩展方法 /// </summary> public static class EnumExtension { private static Dictionary<string, Dictionary<string, string>> _enumCache; /// <summary> /// 缓存 /// </summary> private static Dictionary<stri…
题目链接 本题大意:给你n个长度为value[ i ]的长木板,让你切割成为等长的k份,问你切割的最大长度是多少. 本题思路:其实很容易可以想到先找到一个上界和一个下界,开始枚举里面的所有长度,取最长的那个即可,此时发现长度为浮点型朴素算法自然无法枚举,我们可以想到二分,局部逼近即可. 参考代码: /* 二分思维训练: 枚举值,判断是否可行,求出最大...最小值 */ #include <cstdio> #include <algorithm> #define mid ((doub…