2012-05-28 25 views
0

我在C#中使用XDocument生成XML。 一切工作正常,除了我總是得到自動生成的字符串XDocument正在附加字符串

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

        ) 
       ); 
return doc.ToString(); 

它總是返回是這樣的: 如何刪除?

<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別的一個正確的值。

回答

0

string元素是您從Web服務返回的值的容器。您不能返回不在元素內的數據。

如果您想從Web服務中返回自己的XML代碼,則不應該使用內置框架來生成Web服務,而應該使用HTTP處理程序,以便您可以直接返回響應,而不是直接返回預定的SOAP消息。