我从Ebay API调用中获得XML返回。这实际上是Ebay类别的集合列表。但问题是,我无法从XML输出访问其集合。我附上了两张图片 - 第一张显示XML值返回变量的调试,第二张显示" InnerList"。我的主要目标是准备这个XML数据存储在我的数据库中,所以我需要一个干净的XML数据列表。有什么想法吗?
答案 0 :(得分:1)
您可以将xml反序列化为您自己的类/对象 - 然后它可能更容易使用。我所做的就是将xml标签放到一个类中,我可以反序列化它。请参阅以下课程和方法:
public static T Deserialize<T>(string xmlText)
{
try
{
var stringReader = new System.IO.StringReader(xmlText);
var serializer = new XmlSerializer(typeof(T));
return (T)serializer.Deserialize(stringReader);
}
catch
{
throw;
}
}
[XmlElement("adress")]
public class Adress
{
[XmlElementAttribute("street_address")]
public string street_address { get; set; }
[XmlElementAttribute("postal_code")]
public string postal_code { get; set; }
[XmlElementAttribute("city")]
public string city { get; set; }
[XmlElementAttribute("country")]
public string country { get; set; }
}
public main()
{
Adress myAdress = Deserialize<Adress>(XMLstring);
}
希望它有所帮助!
答案 1 :(得分:0)
您似乎正在使用Ebay SDK。请尝试使用以下代码处理返回值。
foreach (CategoryTypeCollection item in categories)
{
item.ItemAt(0).CategoryID = "This is how you access the properties of he returned result";
// THE XML is already parsed for you via SDK, so you don't have to parse it...
// since i wrote foreach loop here, always access itemAt 0th index posiiton
}