C#中的List<类名> 怎么理解?如把Datarow dr[0]=List<类名> 这怎么理解?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C#中的List<类名> 怎么理解?如把Datarow dr[0]=List<类名> 这怎么理解?相关的知识,希望对你有一定的参考价值。
参考技术A 数组的长度不可变,只有在元素数量确定的时候才能用,那如果元素数量不确定呢?那用起来就太恶心了,于是就有人发明了List,这玩意可以根据元素数量自动改变长度,是不是就方便多了?但是这个List是用来存什么类型的数据?那就是用<>来限制,List<string>就是一个可自改变长度的string数组,List<string> 就是 string[] 的升级版,List<int> 就是 int[] 的升级版...呼~打了这么多字,这得多闲得无聊啊,唉~本回答被提问者采纳 参考技术B 一个泛型集合 泛型 就是<>中得类 这个集合中可以包含多个 这个类的集合。Datarow 是类的某一行 数据, dr[0]是一个单元 0代表下标索引, 就是行dr的第一列的值 是一个 一种类的集合。
C#反射执行方法返回List,怎么获取List
我有一系列按照一定规则命名的类,现在利用类名反射执行方法,其中一个方法返回的是List<类名>的list列表。但是反射方法返回的都是object,怎么把这个object转换为List。注:此处类名为string类型,不能找到对应的类。
问题已解决很久了,突然看见这个,把答案贴出来,有类似问题的可以参考一下。
foreach (object o in (IEnumerable)listModel)
//do something
if(datas!=null)
转换成功,可以用datas
追问
没有对应类型,类型是变化的
追答不知类型,你怎么转,你再是变化的,但业务决定到某个时间点,也是必需有类型的。
那你只能一个个判断
list datas= object as List; //一定要你对应的类型
if(datas!=null)
转换成功,可以用datas
list datas= object as string; //一定要你对应的类型
if(datas!=null)
转换成功,可以用datas
....
那我还用个屁的反射
参考技术B IEnumerable vvv = obj as IEnumerable;用这个可以将反射返回的object转化成集合的方式。
然后就可以foreach这个东西了。本回答被提问者采纳
以上是关于C#中的List<类名> 怎么理解?如把Datarow dr[0]=List<类名> 这怎么理解?的主要内容,如果未能解决你的问题,请参考以下文章