我使用WebService將XmlDocument轉換爲PDF。WebService從我的XmlDocument中刪除<xml>標記
我發送到Web服務的XmlDocument看起來像這樣。
<?xml version="1.0" encoding="utf-16" ?>
<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format">
...
</fo:root>
我有一個問題,所以我在調試國防部去發現,當XmlDocument對象是從我的ASP網站本身轉移到Web服務,基於.NET 1.1的作品看到他 XML標記。是否有這個標籤被刪除的原因?它可能是由SOAP響應引起的嗎?
有沒有辦法在手動添加標籤迴文檔?
編輯
要回答John的問題,是我的意思是處理指令。它剛剛熄滅,我想知道爲什麼,因爲我用來轉換的庫在沒有它的情況下無法正常工作。如果我手動添加它,它工作正常,但我只是想知道它爲什麼消失。
編輯2
即使它不是一個標籤,需要XmlDocument的只是不無它的工作庫就是爲什麼我需要它。除此之外,文檔的其餘部分正確處理。從Web引用生成的Reference.cs看起來是這樣的調用方法:
/// <remarks/>
[System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://tempuri.org/GeneratePdfFromXml", RequestNamespace="http://tempuri.org", ResponseNamespace="http://tempuri.org", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
[return: System.Xml.Serialization.XmlElementAttribute(DataType="base64Binary")]
public byte[] GeneratePdfFromXml(XmlNode FormattedObjectXml) {
object[] results = this.Invoke("GeneratePdfFromXml", new object[] {
FormattedObjectXml});
return ((byte[])(results[0]));
}
這是相同的問題,因爲另一個問題我有,其中XmlDocument的作爲,因爲SOAP響應XmlNode的引用是的XmlDocument本身。
我只是將其更改爲一個字符串; MyXmlDocument.OuterXml;這樣,一切都保持不變,沒有問題。
你指的是哪個「XML」標籤? ''?這是一個處理指令,而不是一個標籤。它不應該造成任何問題。是什麼讓你認爲這是問題? – 2011-04-07 19:17:49
再次,這不是一個標籤,它是一個處理指令。請顯示正在刪除處理說明的服務操作的簽名(功能標題)。有機會,它應該被刪除,但讓我們看看。 – 2011-04-07 19:46:47
@約翰桑德斯 - 不是一個PI,雖然它看起來像一個。參見[http://www.developerfusion。「XML聲明是一個處理指令?」下的「com/samplechapter/1704/beginning-xml/10 /」) XML規範清楚地顯示了XML聲明[http://www.w3.org/TR/2008/REC-xml-20081126/#NT-XMLDecl]和處理指令[http://www.w3。 org/TR/2008/REC-xml-20081126 /#sec-pi] – lavinio 2011-04-07 19:52:53