当前位置: 代码迷 >> ASP.NET >> 一个枚举参数传递的有关问题
  详细解决方案

一个枚举参数传递的有关问题

热度:3039   发布时间:2013-02-25 00:00:00.0
一个枚举参数传递的问题
C# code
//test1.cspublic class test1{    public enum aa{ zz, xx, cc }    public enum bb{ vv, hh, nn}    public string cc(aa enum1, bb enum2)    {        return null;    }}//test2.cspublic class test2{    string dd = new test1().cc(test1.aa.zz, test1.bb.hh);}


以上的程序这样写没问题,但是如果定义的枚举越多,传递的参数就会越多,有没有办法把枚举集合起来,然后只用一个参数就可以传递了?(不用在意return null;测试用的而已)

比如变这样:
C# code
public class test1{    枚举集合    {        enum aa{ zz, xx, cc }        enum bb{ vv, hh, nn}    }    public string cc(集合 mm)    {        return null;    }}//test2.cspublic class test2{    枚举集合 tt = new 枚举集合();    tt.aa.zz;    tt.bb.hh;    string dd = new test1().cc(tt);}


我知道上面那样写是肯定错误的,我只是想表达我的意思,有没有办法这样实现起来?(不用在意return null;测试用的而已)

------解决方案--------------------------------------------------------
你可以把枚举当个实体类。实体类怎么操作。你就怎么操作!
------解决方案--------------------------------------------------------
就当实体类处理吧 枚举型属性属性名可以就是枚举的名字
------解决方案--------------------------------------------------------
要不你将需要的参数用一个实体类来处理,要不就直接在参数列表中列出来。用一个实体类的话,可以考虑在利用反射来获取字段或属性
  相关解决方案