locked
Compatibility of serialization between .Net v2.0 and .Net v1.1 RRS feed

  • Question

  • I have a  remote v1.1 client accessing a v2.0 server using HTTP remoting with binary formatting.

    The call succeeds but on the client I get this error message (presumably during deserialization of returned parameters) :

    Ticks must be between DateTime.MinValue.Ticks and DateTime.MaxValue.Ticks.
    Parameter name: ticks
        - Source: mscorlib
        - Stack:
    Server stack trace:
       at System.DateTime..ctor(Int64 ticks)
       at System.Runtime.Serialization.Formatters.Binary.__BinaryParser.ReadDateTime()
       at System.Runtime.Serialization.Formatters.Binary.__BinaryParser.ReadValue(InternalPrimitiveTypeE code)
       at System.Runtime.Serialization.Formatters.Binary.__BinaryParser.ReadMemberPrimitiveTyped()
       at System.Runtime.Serialization.Formatters.Binary.__BinaryParser.Run()
       at System.Runtime.Serialization.Formatters.Binary.ObjectReader.Deserialize(HeaderHandler handler, __BinaryParser serParser, Boolean fCheck, IMethodCallMessage methodCallMessage)
       at System.Runtime.Serialization.Formatters.Binary.BinaryFormatter.Deserialize(Stream serializationStream, HeaderHandler handler, Boolean fCheck, IMethodCallMessage methodCallMessage)
       at System.Runtime.Remoting.Channels.CoreChannel.DeserializeBinaryResponseMessage(Stream inputStream, IMethodCallMessage reqMsg, Boolean bStrictBinding)
       at System.Runtime.Remoting.Channels.BinaryClientFormatterSink.SyncProcessMessage(IMessage msg)

    Exception rethrown at [0]:
       at System.Runtime.Remoting.Proxies.RealProxy.HandleReturnMessage(IMessage reqMsg, IMessage retMsg)
       at System.Runtime.Remoting.Proxies.RealProxy.PrivateInvoke(MessageData& msgData, Int32 type)
       at {namespace.interfacename}.get_ServerTime()

    Any ideas how to get around this without moving the server back to v1.1 (client cannot be moved to v2.0 currently!)?

    Thanks,

    \jpl
    Thursday, December 14, 2006 9:35 AM

Answers

All replies

  • Remoting is not wire-interoperable between versions of the .NET Framework -- without changes. There is a patch available for the .NET Framework 1.1 to create interoperability. See:

    http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=300065&SiteID=1

    Clemens

    Thursday, December 14, 2006 5:58 PM
    Moderator
  • Yes thanks - got the patch. Wasn't easy! Took some persuading as the MS support guy I was dealing with repeatedlly denied the existence of this patch!!

    Makes me wonder why this is not more readily available!

    Thanks

    \jpl
    Tuesday, December 19, 2006 1:58 PM
  •  

    I'm encountering the same Framework serialization incompatibility issue. I will not be able to go for the patch, since my server is inn Windows 2000. Is any patch versions for windows 2k OS?

     

    Please suggest.

     

    Thanks.

    Vivek

    Thursday, April 24, 2008 5:36 PM