现有多个Enum,打算写个函数把它转换成字符串JSON格式
例如:
enum A{
  a = 1,
  b = 2
}enum B{
  c = 3,
  d = 4
}想得到2个JSON格式的字符串{a = 1, b = 2} {c = 3, d = 4}要怎么弄?

解决方案 »

  1.   

     foreach(A x in Enum.GetValues(typeof(A)))
    Console.WriteLine("{0}={1}",x,(int)x);
      

  2.   

      string str = "{";
                Type tp = Type.GetType("命名空间.A");
                foreach (string s in Enum.GetNames(tp))
                {
                    str += s + "=" + (int)Enum.Parse(tp, s) + ",";
                }
                str = str.TrimEnd(',') + "}";B也同上
      

  3.   

    string xx;
     foreach (A  A in Enum.GetValues(typeof(A)))
    {
                  
       xx+=string.Format("{0}={1},",A.ToString(),(int)A);          
    }
    xx=xx.TrimEnd(',');
      

  4.   

    void Main()
    {
    string result =string.Format("{{{0}}}",string.Join(",",Enum.GetValues(typeof(A)).Cast<A>().Select(a=>string.Format("{0}={1}",a,(int)a)).ToArray()));
    Console.WriteLine(result);
    }
    enum A{
      a = 1,
      b = 2
    }