c#创建不确定类型的泛型集合

  • Post author:
  • Post category:其他


描述:

假设存在3个类,分别为  Class_01,Class_02,Class_03。

这三个类内属性或方法 ,全部或部分通用。需要对这三个类中的某个属性或方法进行操作。

现在根据某种判断进行声明三种中的某一种,要求:同一变量名,同样的操作,只是类型不确定。

代码:

1.首先写一个创建泛型对象的方法

 /// <summary>
 /// 创建泛型对象
 /// </summary>
 /// <typeparam name="T">参数类型</typeparam>
 /// <returns></returns>
 public List<T> GetListObj<T>()
 {
     return new List<T>();
 }

2.调用

public void Test()
{
    dynamic list;//创建一个dynamic类型的对象
    if(...)
    {
        list = this.GetListObj<Class_01>();
    }
    else if(...)
    {
        list = this.GetListObj<Class_02>();
    }
    else if(...)
    {
        list = this.GetListObj<Class_03>();
    }

}

这种方法也有一些缺陷。但是本着实用的原则,而且在我的实际使用过程中类是实体类,由于数据庞大,所以分成了多个库,里面的一些字段大多相同,而此处需要处理的数据是公共部分,前面一个人是分开写的,冗余代码太多,所以写了这么个东西。没啥技术含量,但是用起来还是很方便的。当个记录,方便自己以后使用,也方便需要的朋友,或类似需求的朋友,做个参考。



版权声明:本文为AsynSpace原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。