草庐IT

c# - 将 C# 枚举定义序列化为 Json

在C#中给出以下内容:[Flags]publicenumMyFlags{None=0,First=1ServiceStack.Text中是否有任何现有方法可序列化为以下JSON?{"MyFlags":{"None":0,"First":1,"Second":2,"Third":4,"Fourth":8}}目前我正在使用下面的例程,有更好的方法吗?publicstaticstringToJson(thisTypetype){varstringBuilder=newStringBuilder();Arrayvalues=Enum.GetValues(type);stringBuilder.

c# - 迭代枚举类型

这个问题在这里已经有了答案:关闭9年前。PossibleDuplicate:HowdoIenumerateanenum?我不知道是否可以做我想做的事,但我想为什么不呢。我有示例枚举:publicenumAnimals{Cat,Dog,...}我想做的是迭代这个枚举。我希望它像那样工作:foreach(vartypeinAnimals){Console.WriteLine(type.toString());}输出将是:CatDog这可能吗?我不想把每一项都放到一个数组中,然后迭代,我想直接在这个枚举上迭代。

c# - 迭代枚举类型

这个问题在这里已经有了答案:关闭9年前。PossibleDuplicate:HowdoIenumerateanenum?我不知道是否可以做我想做的事,但我想为什么不呢。我有示例枚举:publicenumAnimals{Cat,Dog,...}我想做的是迭代这个枚举。我希望它像那样工作:foreach(vartypeinAnimals){Console.WriteLine(type.toString());}输出将是:CatDog这可能吗?我不想把每一项都放到一个数组中,然后迭代,我想直接在这个枚举上迭代。

c# - 如何判断枚举属性是否已设置? C#

我有一个像这样的枚举属性的类:publicclassFoo{publicColorColorType{get;set;}}publicenumColor{Red,Green,}现在这个类可以像这样初始化:varfoo=newFoo();没有设置ColorType属性。现在,我正在尝试创建一个方法并对是否设置过该枚举执行操作,例如我有一个方法privatevoidcheckEnum(Foofoo){if(foo.ColorType!=null){//performtheseactions}else{//performthoseactions}}但是我收到一条警告说该值永远不会为null并

c# - 如何判断枚举属性是否已设置? C#

我有一个像这样的枚举属性的类:publicclassFoo{publicColorColorType{get;set;}}publicenumColor{Red,Green,}现在这个类可以像这样初始化:varfoo=newFoo();没有设置ColorType属性。现在,我正在尝试创建一个方法并对是否设置过该枚举执行操作,例如我有一个方法privatevoidcheckEnum(Foofoo){if(foo.ColorType!=null){//performtheseactions}else{//performthoseactions}}但是我收到一条警告说该值永远不会为null并

C# 将字符串显式转换为枚举

我想在c#中从字符串到枚举之间进行显式转换,以便实现:(MyEnum)Enum.Parse(typeof(MyEnum),stringValue)我想将它驱逐到一个显式转换运算符中,我这样做了但没有成功:publicstaticexplicitoperator(MyEnum)(valuestringValue){return(MyEnum)Enum.Parse(typeof(MyEnum),stringValue);}您知道在C#中使用.NET3.5是否可行吗? 最佳答案 类型转换是不可能的。问题是用户定义的转换必须包含在结构或类声

C# 将字符串显式转换为枚举

我想在c#中从字符串到枚举之间进行显式转换,以便实现:(MyEnum)Enum.Parse(typeof(MyEnum),stringValue)我想将它驱逐到一个显式转换运算符中,我这样做了但没有成功:publicstaticexplicitoperator(MyEnum)(valuestringValue){return(MyEnum)Enum.Parse(typeof(MyEnum),stringValue);}您知道在C#中使用.NET3.5是否可行吗? 最佳答案 类型转换是不可能的。问题是用户定义的转换必须包含在结构或类声

C# 将对象转换为枚举

这个问题与泛型方法中枚举的转换有关给定一个枚举publicenumCrustaceans{Frog=1,Toad=4}我可以简单地创建我的枚举实例shortval=4;Crustaceanscrusty=(Crustaceans)val;但是,如果shortval=4;objectobj=(object)val;Crustaceanscrusty=(Crustaceans)obj;尝试执行crusty的初始化时抛出运行时异常。谁能解释为什么会发生这种情况,以及为什么这样做是不合法的。并不是说我真的想这样做,但我在尝试让泛型发生类似的事情时遇到了一个问题,而这实际上是幕后发生的事情。即p

C# 将对象转换为枚举

这个问题与泛型方法中枚举的转换有关给定一个枚举publicenumCrustaceans{Frog=1,Toad=4}我可以简单地创建我的枚举实例shortval=4;Crustaceanscrusty=(Crustaceans)val;但是,如果shortval=4;objectobj=(object)val;Crustaceanscrusty=(Crustaceans)obj;尝试执行crusty的初始化时抛出运行时异常。谁能解释为什么会发生这种情况,以及为什么这样做是不合法的。并不是说我真的想这样做,但我在尝试让泛型发生类似的事情时遇到了一个问题,而这实际上是幕后发生的事情。即p

c# - 如何获取枚举数?

这个问题在这里已经有了答案:Totalnumberofitemsdefinedinanenum(10个答案)关闭9年前。如何获取枚举中定义的总值的计数?