使用c#从服务器读取远程xml

时间:2017-12-05 05:15:17

标签: c# xml xelement

您好我想从服务器获取简单的xml文件并读取数据,以便我可以将其转换为列表。到目前为止,我尝试了一些lib和代码并没有成功。我在一行中获取xml内容而没有任何标签<>并且计数始终为0。 XML字符串。我需要获取camp标签内的数据

<campaigns>
 <mainPage>http://example.com</mainPage>
 <orderPage>https://www.example.co.il/adver/</orderPage>
 <totalCount>3</totalCount>
 <onLineCount>2</onLineCount>
  <campaignList>
   <camp id="557">
    <name>test1</name>
    <status>on</status>
    <rating>5</rating>
    <url>http://example.com/557</url>
  </camp>
  <camp id="559">
   <name>test1</name>
   <status>on</status>
   <rating>5</rating>
   <url>http://example.com/559</url>
 </camp>
 <camp id="660">
  <name>test1</name>
  <status>off</status>
  <rating>5</rating>
  <url>http://example.com/660</url>
 </camp>
</campaignList>

到目前为止我正在尝试的c#代码

XElement xelement = XElement.Load("http://example.com/test.xml");

    var name = from nm in xelement.Elements("camp")
               where (string)nm.Element("status") == "on"
               select nm;

    Response.Write(name.Count());

    foreach (XElement xEle in name)
    {
        Response.Write(xEle);
    }

1 个答案:

答案 0 :(得分:0)

XElement.Elements()表示在子标签中搜索。我认为您需要的是Descendants()xelement.Element("campaigns").Element("campaignList").Elements("camp")