我正在调用第三方服务,并在响应中返回了一个名为Items
的对象[]。这个对象数组在数组中有几个不同类型的不同类型的对象。使用不同类型对象访问对象[
这里的Items
是什么样子的CS文件:
[System.Xml.Serialization.XmlElementAttribute("REPORT", typeof(REPORT))]
[System.Xml.Serialization.XmlElementAttribute("_PRODUCT", typeof(_PRODUCT))]
[System.Xml.Serialization.XmlElementAttribute("_PROPERTY_INFORMATION", typeof(_PROPERTY_INFORMATION))]
public object[] Items
{
get
{
return this.itemsField;
}
set
{
this.itemsField = value;
}
}
我需要访问项目阵列内的_PROPERTY_INFORMATION
对象。但是,我不确定接近这样一个任务的最好方法是什么。
这是我目前有:
var items = RESPONSE.RESPONSE_DATA[0].PROPERTY_INFORMATION_RESPONSE.Items;
foreach (_PROPERTY_INFORMATION info in items)
{
parsedStreetAddress = info.PROPERTY._PARSED_STREET_ADDRESS;
}
是否与较少的代码行更好的方式来完成同样的事情?我只是得到了Items数组中的每个_PROPERTY_INFORMATION
。
你只能期待在那里是'items'一个'PROPERTY_INFORMATION'实例?或者你只想要最后一个? – Lee
检查每个项目的类型 - 如果它是您正在寻找的类型,则投射并访问该属性。 –