jean-marc.andre at polymtl.ca
Wed Apr 16 14:26:30 EDT 2003
thanks for your response.
I'm pretty sure that the MS SoapFormatter
(System.Runtime.Serialization.Formatters.Soap.SoapFormatter) is not only
formatting the public fields and properties but also the private ones.
As an exemple, here is how the MS soap formatter deals with the
<SOAP-ENC:Array id="ref-11" SOAP-ENC:arrayType="xsd:anyType">
<item id="ref-12" xsi:type="SOAP-ENC:string">Hello</item>
<item id="ref-13" xsi:type="SOAP-ENC:string">World</item>
I guess that *_array*, *_head*, .... are private fields as they aren't
listed as public ones in the MS documentation.
And here is how the formatter I am working on deals with the same object:
<contents href="#ref-6" />
<SOAP-ENC:Array id="ref-6" SOAP-ENC:arrayType="xsd:anyType">
<item id="ref-7" xsi:type="SOAP-ENC:string">Hello</item>
<item id="ref-8" xsi:type="SOAP-ENC:string">World</item>
As you can see, a mapping can be done between the *_array* and *content*
field but there is no *_tail* in the Mono class.
An interface like System.Runtime.Serialization.ISerializable could maybe
solve a part of the problem ?
Miguel de Icaza wrote:
>>I'm currently trying to implement the SoapFormatter class. The work is
>>in progress but I have one question about the compatibility with the MS
>I assume you are talking about the SoapFormatter for remoting purposes.
>There is some code on CVS. But am afraid has not a very bright future
>due to the way it was implemented.
>>I'm wondering if the Mono SOAP formatter should be able to read messages
>>formatted by the MS SOAP formatter and vice versa.
>Yes, they should. The question to be answered is which encoding does
>the SoapFormmater use. There are two "formats":
> * Soap Section 5 encoding.
> * XML Schema-based encoding.
>I know that ASP.NET and some of the Web classes use the XmlSerializer
>manually, and not the Remoting version.
>>I'm asking this question because many serializable classes of the Mono
>>and MS class libraries don't have the same field's name (sometimes, they
>>don't have the same number of fields) so it may be difficult to produce
>>the same messages.
>We should look at each case, and study a solution. The only fields that
>matter are public properties and fields, and those should pretty much be
More information about the Mono-devel-list