LINQ 获得字段内容

liuwei19860906 2017-07-27 03:13:28
现在要遍历获取实体的各个字段与值
字段名我找到了

var query = from x in l.GetType().GetProperties()
select x.Name;
foreach (var item in query)
{
Console.WriteLine(item);

}

那如何获取字段的值呢?
...全文
172 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
liuwei19860906 2017-07-27
  • 打赏
  • 举报
回复
引用 2 楼 starfd 的回复:
foreach (var p in l.GetType().GetProperties())
            {
                Console.WriteLine("name:"+p.Name +" value:"+p.GetValue(l));
 
            }
好了,填null就行了,谢谢了
liuwei19860906 2017-07-27
  • 打赏
  • 举报
回复
引用 2 楼 starfd 的回复:
foreach (var p in l.GetType().GetProperties())
            {
                Console.WriteLine("name:"+p.Name +" value:"+p.GetValue(l));
 
            }
.net 版本?我的是3.5开发的
liuwei19860906 2017-07-27
  • 打赏
  • 举报
回复
引用 2 楼 starfd 的回复:
foreach (var p in l.GetType().GetProperties())
            {
                Console.WriteLine("name:"+p.Name +" value:"+p.GetValue(l));
 
            }
这个我试了下,p.GetValue(l)); 是多参数重载的,最简单的是2参数的,obj和obj[]
  • 打赏
  • 举报
回复
foreach (var p in l.GetType().GetProperties())
            {
                Console.WriteLine("name:"+p.Name +" value:"+p.GetValue(l));
 
            }
  • 打赏
  • 举报
回复
你获取的是属性的名称,你获取值的话应该是获取Property,然后通过这个的GetValue方法来获取值
我们读取和写入Excel 经常使用NPOI工具,如果我们的需求只是需要读取Excel,可以考虑使用LinqToExcel这个组件。这个组件用起来简单、实用、操作方便,而且结合了Linq的查询特性,excel版本不仅支持2003,而且连wps表格都支持(后缀名为.et),csv文件更不在话下了。项目地址:https://github.com/paulyoder/LinqToExcel在使用之前:1.添加引用,通过Nuget 来添加是最方便的了,这里要注意的32/64问题。LinqToExcel.dll Remotion.Data.Linq.dll2.添加命名空间using LinqToExcel;//取得数据,只需要一行代码var execelfile = new ExcelQueryFactory(sample.xls);  如何取到相应的表呢?//紧接楼上var tsheet = excelfile.Worksheet(0);  此时得到是没有进行相应映射的(row)行列集合.一个简单的查询:var excelfile = new ExcelQueryFactory("1.xls"); var tsheet = excelfile.Worksheet(0);<br> //查询30岁以上的人的名字 var query = from p in tsheet where p["Age"].Cast<int>() > 30 select p; foreach (var item in query) { Console.WriteLine("Name is {0}",item[0].Value.ToString()); } Console.Read();    那如何转成相应的实体集合呢? LinqToExcel还具有Mapping 功能,如果类的属性名和Excel里的表头名字如果是英文,(区分大小写)必须与属性名保持一致,支持中文属性名和表头。接着就是一个常遇到的需求,虽然说 Excel 的字段定义是英文,但是读出来的时候必须要是更有意义的字词,这时候就可以利用 LinqToExcel 的 AddMapping 功能来达到。 github:https://github.com/paulyoder/LinqToExcelnuget: https://www.nuget.org/packages/LinqToExcel/ 和 https://www.nuget.org/packages/LinqToExcel_x64/  标签:LinqToExcel

8,497

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 LINQ
社区管理员
  • LINQ
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧