0

C# で XDocument を使用して XML を生成しています。常に自動生成された文字列を取得することを除いて、すべて正常に動作します

XDocument doc = new XDocument(
                new XDeclaration("1.0", "UTF-8", "yes"),
                new XElement(aw+"ProviderUpdate",
                       //... more more here

                    )
                );
return doc.ToString();

常に次のようなものが返されます: How do I remove ?

<string xmlns="urn:Microsoft.Search.Registration.Response">
<ProviderUpdate xmlns="urn:Microsoft.Search.Registration.Response">
...
</ProviderUpdate>
</string>

私は次のようなものになると予想していました:

<?xml version="1.0" encoding="utf-8"?>
<ProviderUpdate xmlns="urn:Microsoft.Search.Registration.Response">
...
</ProviderUpdate>

これは私のファイルの一番上に定義されています:

[WebService(Namespace = "urn:Microsoft.Search.Registration.Response")]

ただし、xmlns を正しい値に変更するだけです。

4

1 に答える 1

0

このstring要素は、Webサービスから返す値のコンテナーです。要素内にないデータを返すことはできません。

Webサービスから独自のXMLコードを返す場合は、組み込みのフレームワークを使用してWebサービスを生成するのではなく、HTTPハンドラーを使用して、事前に定義されたSOAPメッセージにラップする代わりに応答を直接返すことができます。

于 2012-05-28T11:21:25.210 に答える