enter image description here我试图获取对象的值[],但是使用foreach效果不佳。 object []包含一个object []列表我该如何获取数据
public void SaveBottonTable(string dimension)
{
JavaScriptSerializer json_serializer = new JavaScriptSerializer();
object[] routes_list =
(object[])json_serializer.DeserializeObject(dimension);
GlobalConstant.holeconfiguration = routes_list;//list is referred in the image
foreach(object hole in routes_list)
{
hole[0]//shows error
}
}
how to get the value of the first object[]
https://i.stack.imgur.com/x8SG1.png
答案 0 :(得分:1)
由于每个元素都是字符串数组,因此应将每个对象转换为数组,然后对其进行索引。
foreach(object hole in routes_list)
{
var elements = hole.ToArray();
//then you can access elements[0] and elements [1]
}
但是,我认为如果格式为“ Key”:“ Value”会更好 例: { “ object-ID”:“ 1234123cfrewr”, “ view”:“ Cover”, 。 。 。
请注意Collection.Generics,因为那里有几个Dictionary。他们将需要额外的照顾。
答案 1 :(得分:0)
您的json
似乎包含词典。在那种情况下,我会将其反序列化为适当的类型Dictionary<string, object>
。然后,在循环浏览时,您可以使用hole.Key
获取密钥,也可以使用hole.Value
获取值。
答案 2 :(得分:0)
这种方式:
object[] list = new object[]
{
new object(),
1,
"ciao",
new object[] { 1, 2, 3, 4, 5 },
"pizza",
new object[] { "ciao", "pizza" },
new List<object>(){ 123, 456 }
};
foreach (ICollection collection in list.OfType<ICollection>())
{
//Here you can work with every collection found in your list
}