c# – 如何遍历匿名对象列表?

c# – 如何遍历匿名对象列表?,第1张

概述我有一些示例代码如下: var items = new List<object>();var testObjectOne = new{ Valueone = "test1", ValueTwo = "test2", ValueThree = "test3"};var testObjectTwo = new{ Valueone = "test1", 我有一些示例代码如下:

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);}
总结

以上是内存溢出为你收集整理的c# – 如何遍历匿名对象列表?全部内容,希望文章能够帮你解决c# – 如何遍历匿名对象列表?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/langs/1224566.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-05
下一篇 2022-06-05

发表评论

登录后才能评论

评论列表(0条)

保存