c# – 如何遍历匿名对象列表?
发布时间:2020-12-15 19:40:44 所属栏目:百科 来源:网络整理
导读:我有一些示例代码如下: var items = new Listobject();var testObjectOne = new{ Valueone = "test1",ValueTwo = "test2",ValueThree = "test3"};var testObjectTwo = new{ Valueone = "test1",ValueThree = "test3"};items.Add(testObjectOne);items.Add(t
我有一些示例代码如下:
var items = new List<object>(); var testObjectOne = new { Valueone = "test1",ValueTwo = "test2",ValueThree = "test3" }; var testObjectTwo = new { Valueone = "test1",ValueThree = "test3" }; items.Add(testObjectOne); items.Add(testObjectTwo); foreach (var obj in items) { var val = obj.Valueone; } 但我无法访问Valueone并得到错误:object’不包含’Valueone’的定义,并且没有扩展方法’Valueone’接受类型’object’的第一个参数可以找到(你是否缺少using指令或装配参考?) 问题:如何迭代此列表并访问ValueOne?非常感谢任何帮助或意见,谢谢 解决方法
您可以使用反射来获取匿名类型的属性:
var items = new List<object>(); var testObjectOne = new { Valueone = "test1",ValueThree = "test3" }; var testObjectTwo = new { Valueone = "test1",ValueThree = "test3" }; items.Add(testObjectOne); items.Add(testObjectTwo); foreach (var obj in items) { var val = obj.GetType() .GetProperty("Valueone") .GetValue(obj); } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |