Silverlight Framework没有得Enum.GetValues方法

为啥这么常用的方法在Silverlight里居然没有呢?自己写一个:

复制代码
using System;
using System.Linq;

namespace SampleApp
{
    
public class EnumHelper
    {
        
public static T[] GetValues<T>()
        {
            Type type 
= typeof(T);

            
if (!type.IsEnum)
            {
                
throw new InvalidOperationException("Type parameter T should be an enum");
            }

            var fields 
= type.GetFields().Where(fi => fi.IsLiteral);
            
return fields.Select(fi => (T)fi.GetValue(type)).ToArray();
        }
    }
}
复制代码

 

posted @ 2008-10-19 11:50  XIN...  阅读(351)  评论(0)    收藏  举报
编辑推荐:
· MySQL索引完全指南:让你的查询速度飞起来
· 一个字符串替换引发的性能血案:正则回溯与救赎之路
· 为什么说方法的参数最好不要超过4个?
· C#.Net 筑基-优雅 LINQ 的查询艺术
· 一个自认为理想主义者的程序员,写了5年公众号、博客的初衷
阅读排行:
· 我用这13个工具,让开发效率提升了5倍!
· Coze工作流实战:一键生成鸡汤视频——厉害的人,早已戒掉情绪
· 商品中心—15.库存分桶扣减的技术文档
· 一次 .NET 性能优化之旅:将 GC 压力降低 99%
· C++服务开发环境-万事开头难
点击右上角即可分享
微信分享提示