windows phone解析xml到字符串

时间:2013-08-07 07:09:37

标签: xml string windows-phone-7 xml-parsing

我正在使用Windows手机。 我需要通过发布到服务器来获取我收到的xml数据,如下所示

try
        {
            HttpWebRequest webRequest = (HttpWebRequest)asynchronousResult.AsyncState;
            HttpWebResponse response;
            response = (HttpWebResponse)webRequest.EndGetResponse(asynchronousResult);

            Stream streamResponse = response.GetResponseStream();
            StreamReader streamReader = new StreamReader(streamResponse);
            var Response = streamReader.ReadToEnd();
            streamResponse.Close();
            streamReader.Close();
            response.Close();
            if (Response == "")
            {
                //show some error msg to the user        


            }
            else
            {
                //Your response will be available in "Response" 
                string mystring = Response.ToString();
                //Mytext.Text = mystring;
                Debug.WriteLine(mystring);


                //TRY

                XDocument xd = XDocument.Parse(mystring);

                Debug.WriteLine(xd);

                }
        }

我在调试屏幕上得到如下输出

<User><Number>00000</Number><Id>1234</Id><TextKey>1A1A1A1A1A1A1A1A</TextKey><Agent>WindowsPhone</Agent></User>
<User>
  <Number>00000</Number>
  <Id>1234</Id>
  <TextKey>1A1A1A1A1A1A1A1A</TextKey>
  <Agent>WindowsPhone</Agent>
</User>

我需要从这个xml中提取每个元素并将其用作字符串,int等。 我不需要把它放在一个列表中 - 我需要单独使用每个元素

我怎样才能做到这一点?

1 个答案:

答案 0 :(得分:1)

您可以尝试:

 XDocument xd = XDocument.Load(XmlReader.Create(new StringReader(mystring)));

用于在XDocument中加载字符串。

并且

XElement root = xd.Root;
foreach (XElement el in root.Descendants())
{
    if (el.Name == "User")
    {

    }
}

用于在Windows Phone上解析XML。

您有关于XElement here的更多信息!