如何在标签内获取字符串?

时间:2013-01-27 23:45:36

标签: c# xml string xml-parsing

我有一个返回此字符串值的Web服务:

<NewDataSet>
  <Table>
    <Country>Mexico</Country>
    <City>Acapulco / G. Alvarez</City>
  </Table>
  <Table>
    <Country>Mexico</Country>
    <City>Aerop. Internacional Monterrey, N. L.</City>
  </Table>
  <Table>
    <Country>Mexico</Country>
    <City>Aguascalientes, Ags.</City>
  </Table>
</NewDataSet>

我需要在数据库表中插入City值。我打算做的是搜索整个字符串,每次检测到一个标记时,我想在里面提取值,然后我将每个值存储在一个List中供以后使用。

但是我无法找到在同一个字符串上不同时间重复该过程的方法。

我首先尝试了Substring和Split但没有成功。 你知道一种帮助我解决这个问题的方法吗? 提前谢谢。

2 个答案:

答案 0 :(得分:2)

var cities = XDocument.Parse(myString).Descendants("City").Select(d => d.Value);

这是使用LINQ to XML获取值的示例。一般来说,你的问题基本上是你有一个XML字符串,你需要以某种方式解析并获得适当的值。其他一些常用方法可能是使用XmlDocument或将XML反序列化为类结构。

答案 1 :(得分:0)

使用Linq to XML或类似的XML解析:

http://msdn.microsoft.com/en-us/library/bb299195.aspx

XElement stringAsXml = XElement.Parse(myString);