2011-07-04 27 views
0

我想在發送它之前操作soapbody。 我在myExtension類中繼承了SoapExtension。 但是,當我看到soapbody,一些節點失蹤。Web服務增強:ASP.NET - 在SOAPEXTENSION中缺少節點

代碼片斷:

公共覆蓋無效ProcessMessage的(的SOAPMessage消息) { 的StreamReader readStr; StreamWriter writeStr; string soapMsg1;

 // System.Diagnostics.Debugger.Break(); 

     XmlDocument xDoc = new XmlDocument(); 
     // a SOAP message has 4 stages. Weare interested in .AfterSerialize 
     switch (message.Stage) 
     { 
      case SoapMessageStage.BeforeSerialize: 
       break; 

      case SoapMessageStage.AfterSerialize: 
       { 
        // Get the SOAP body as a string, so we can manipulate... 
        String soapBodyString = getXMLFromCache(); 

。 。 。 。

誰能告訴我,爲什麼他們丟失的原因....

由於提前, 蘇雷什

回答

0

的問題不在於緩存/緩存的對象。

例如:

[System.Xml.Serialization.XmlIgnoreAttribute()] 
public bool MOCEventStatusSpecified { 
    get { 
     return this.mOCEventStatusFieldSpecified; 
    } 
    set { 
     this.mOCEventStatusFieldSpecified = value; 
    } 
} 

如果我們發送mOCEventStatus領域這應該是發虛。否則,mOCEventStatus字段將不會出現在輸出xml中。