[quoted text, click to view] On 2 aug, 13:38, Martijn B <martijn.burg...@ordina.nl> wrote:
> Hi there,
>
> I've been put on a problem where i've got the fix the following issue:
>
> System.Runtime.Serialization.SerializationException: Serialization
> will not deserialize delegates to non-public methods.
>
> at System.DelegateSerializationHolder.GetDelegate(DelegateEntry de)
> at System.DelegateSerializationHolder.GetRealObject(StreamingContext
> context)
> at
> System.Runtime.Serialization.ObjectManager.ResolveObjectReference(ObjectH=
ol=ADder
> holder)
> at System.Runtime.Serialization.ObjectManager.DoFixups()
> at
> System.Runtime.Serialization.Formatters.Binary.ObjectReader.Deserialize(H=
ea=ADderHandler
> handler, __BinaryParser serParser, Boolean fCheck, IMethodCallMessage
> methodCallMessage)
> at
> System.Runtime.Serialization.Formatters.Binary.BinaryFormatter.Deserializ=
e(=ADStream
> serializationStream, HeaderHandler handler, Boolean fCheck,
> IMethodCallMessage methodCallMessage)
> at
> System.Runtime.Serialization.Formatters.Binary.BinaryFormatter.Deserializ=
e(=ADStream
> serializationStream)
>
> Problem is that i understand the problem but can't find where it
> occurs. Is there a way to find the specific delegate where exception
> message is talking about. The object graph consist of many many
> objects, so it would be searching a needle in a haystack.
>
> Thanks!
>
> Martijn B
I already found a solution to problem above.
I've created a method through reflection that lists all the events,
delegates and invocation list of the events of the given object and
his base classes and public properties (recursive). This way it goes
down the whole object graph. Through this list i could find the
specific delegate that was bound to a private method, which was the
problem.
Martijn B