2011-12-23 6 views
2

私は以下のようなXMLを持っていますが、解析できません。以下のXMLを解析するのを手伝ってください。Windows Phone 7でSoap XMLを解析する方法

<?xml version="1.0" encoding="utf-8"?><soap:Envelope  
xmlns:soap="http://www.w3.org/2003/05/soap-envelope"  
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  
xmlns:xsd="http://www.w3.org/2001/XMLSchema"><soap:Body> 
<GetResponse xmlns="http://tempuri.org/"><GetResult> 
<diffgr:diffgram> 
<NewDataSet> 
<Table> 
<a>hi1</a> 
<b>hi2</b> 
</Table> 
<Table> 
<a>hi3</a> 
<b>hi4</b> 
</Table> 
</NewDataSet> 
</diffgr:diffgram> 
</GetResponse></GetResult> 
</soap:Body> 
</soap:Envelope> 

ここでは、テーブル(つまり、b)タグの結果が必要です。私はLinqを使用してみましたが、私はそれを解析することができません。私はこのようなコードを試しました:

//XML will be there in response string 
String response = e.response; 
public static String myNamespace = "http://tempuri.org/"; 
XDocument reader = XDocument.Parse(response); 
var results = from result in reader.Descendants(XName.Get("GetResponse", myNamespace)) 
       select result.Element("GetResult"). 

しかし、このコードはnullを返しています。

ありがとうございます。

+4

なぜあなただ​​けのスキーマを使用してクライアントを生成し、.NETがあなたのための構文解析を行うことはできませんか? – Bashwork

+0

Bashworkに感謝します。しかし、私はWindows Phone7でこのXMLを解析したいと思います。私はWP7でこのXMLを解析できますか? –

+0

@MahiKumar - WP7プロジェクトでサービス参照を設定することができます。または、スキーマが毎回異なるため、動的でなければならないということですか? –

答えて

0

C#プロジェクトでは、Web参照をインポートして、使用しているWebサービスプロバイダにその参照点を設定できます。このリファレンスは、すべてのSOAPプロトコルを抽象化するカプセル化クラスを作成します。

は、より多くの詳細については、MSDNのリンクを参照してください:http://msdn.microsoft.com/en-us/library/d9w023sx%28VS.71%29.aspx

+0

Carl Tさん、お世話になりました。このXMLをWindows Phone7で解析したいのですが、WP7でこのXMLを解析できますか? –

+0

-1:なぜWindows Phoneの質問に対する答えとして.NET 1.1リンクを投稿するのですか?また、なぜレガシー技術であるWeb参照の使用を提案しますか? –

+0

サービス参照を追加しましたが、それを使用していましたが、サービスではデータセットが返されているため、データセットは使用できません。だから私はURLを打つとXMlを取得する通常の方法を使用する必要があります。だから私は上記のXMlを解析する必要があります。 –

関連する問題