有人可以向我指出一种更简洁的方法来生成随机枚举成员。这有效但看起来很丑。谢谢!publicTRandomEnum(){string[]items=Enum.GetNames(typeof(T));Randomr=newRandom();stringe=items[r.Next(0,items.Length-1)];return(T)Enum.Parse(typeof(T),e,true);} 最佳答案 publicTRandomEnum(){T[]values=(T[])Enum.GetValues(typeof(T));retur
我正在构建一个大量使用Enum的应用程序s用于自定义数据。本质上,一个对象存储在数据库中,具有大约28个独立的属性。每个属性都是一个双字符字段,从SQL直接转换为Enum。.不幸的是,我还需要将这些值转换为两个不同的人类可读值。一个用于数据表上的图例,一个用于CSS类,用于在Web应用程序前端设置图像样式。为此,我设置了两个自定义属性并将它们应用于Enum在必要时。例如:自定义属性接口(interface)publicinterfaceIAttribute{TValue{get;}}示例自定义属性publicsealedclassAbbreviationAttribute:Attrib
我正在构建一个大量使用Enum的应用程序s用于自定义数据。本质上,一个对象存储在数据库中,具有大约28个独立的属性。每个属性都是一个双字符字段,从SQL直接转换为Enum。.不幸的是,我还需要将这些值转换为两个不同的人类可读值。一个用于数据表上的图例,一个用于CSS类,用于在Web应用程序前端设置图像样式。为此,我设置了两个自定义属性并将它们应用于Enum在必要时。例如:自定义属性接口(interface)publicinterfaceIAttribute{TValue{get;}}示例自定义属性publicsealedclassAbbreviationAttribute:Attrib
由于枚举使用整数,我可以使用什么其他结构来让我像枚举一样访问与名称相关联的值:[我知道这是错误的,正在寻找替代方案]privateenumProject{Cleanup=newGuid("2ED3164-BB48-499B-86C4-A2B1114BF1"),Maintenance=newGuid("39D31D4-28EC-4832-827B-A11129EB2"),Upgrade=newGuid("892F865-E38D-46D7-809A-49510111C1"),Sales=newGuid("A5690E7-1111-4AFB-B44D-1DF3AD66D435"),Repl
由于枚举使用整数,我可以使用什么其他结构来让我像枚举一样访问与名称相关联的值:[我知道这是错误的,正在寻找替代方案]privateenumProject{Cleanup=newGuid("2ED3164-BB48-499B-86C4-A2B1114BF1"),Maintenance=newGuid("39D31D4-28EC-4832-827B-A11129EB2"),Upgrade=newGuid("892F865-E38D-46D7-809A-49510111C1"),Sales=newGuid("A5690E7-1111-4AFB-B44D-1DF3AD66D435"),Repl
这可能吗?我到处都找不到。 最佳答案 试试这个:Enum.GetUnderlyingType(typeof(YourEnum)) 关于c#-在C#中,我可以使用反射来确定枚举类型是int、byte、short等吗?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/503806/
这可能吗?我到处都找不到。 最佳答案 试试这个:Enum.GetUnderlyingType(typeof(YourEnum)) 关于c#-在C#中,我可以使用反射来确定枚举类型是int、byte、short等吗?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/503806/
当无法在接口(interface)中定义枚举时,我如何定义一个接口(interface),该接口(interface)的方法以Enum作为参数?因为Enum不是引用类型,所以Object类型不能用作传入参数的类型,那么怎么办呢? 最佳答案 publicenumMyEnum{Hurr,Durr}publicinterfaceMyInterface{voidMyMethod(MyEnumvalue);}如果这不是您所说的,请发表评论,以便人们了解您的问题所在。因为,虽然枚举没有在接口(interface)中定义,但这是一个完全正常且可以
当无法在接口(interface)中定义枚举时,我如何定义一个接口(interface),该接口(interface)的方法以Enum作为参数?因为Enum不是引用类型,所以Object类型不能用作传入参数的类型,那么怎么办呢? 最佳答案 publicenumMyEnum{Hurr,Durr}publicinterfaceMyInterface{voidMyMethod(MyEnumvalue);}如果这不是您所说的,请发表评论,以便人们了解您的问题所在。因为,虽然枚举没有在接口(interface)中定义,但这是一个完全正常且可以
谁能解释一下?alttexthttp://www.deviantsart.com/upload/g4knqc.pngusingSystem;namespaceTestEnum2342394834{classProgram{staticvoidMain(string[]args){//with"var"foreach(varvalueinEnum.GetValues(typeof(ReportStatus))){Console.WriteLine(value);}//with"int"foreach(intvalueinEnum.GetValues(typeof(ReportStatus