如何通过索引C#访问Object

时间:2016-12-01 07:17:42

标签: c# arrays object indexing foreach

我在C#中有一个foreach循环,返回一些库存数据,属性location_id返回object[]。循环如下,

foreach (XmlRpcStruct item in result)
{
   object obj =  item["location_id"];
}

在调试器中,我看到对象如下, enter image description here

所以我猜对象就像

obj[0] = 12
obj[1] = "WH/Stock"

我尝试访问obj,如obj[0],然后我

  

无法将[]索引应用于' object'

类型的表达式

那么,如何通过索引访问对象以检索12WH/Stock

等值

2 个答案:

答案 0 :(得分:8)

使用:

obj作为对象[]投射
var list = (object[])obj;

然后您可以使用list[0]

答案 1 :(得分:1)

指定对象数组类型:

object[] obj =  item["location_id"];

或者,甚至更简单,让编译器推断类型:

var obj =  item["location_id"];