Во время десериализации возникает вызов метода неожиданно.
Как Protobuf может назвать этот метод, когда на него ссылаются только 15 раз во всем решении, и я устанавливаю точки разрыва во всех 15 ссылках? Как это могло быть?
Код: Выделить всё
Kiwy.Core.Engine.dll!Kiwy.Core.Engine.StructCurve.SetCurve3D(Kiwy.Core._3D.WrapCurve3D curve3D) Ligne 81 C#
[Fonction Lightweight]
protobuf-net.dll!ProtoBuf.Internal.Serializers.InheritanceCompiledSerializer.ProtoBuf.Serializers.ISubTypeSerializer.ReadSubType(ref ProtoBuf.ProtoReader.State state, ProtoBuf.Serializers.SubTypeState value) Ligne 49 C#
protobuf-net.Core.dll!ProtoBuf.Serializers.SubTypeState.ReadSubType(ref ProtoBuf.ProtoReader.State state, ProtoBuf.Serializers.ISubTypeSerializer serializer) Ligne 412 C#
[Fonction Lightweight]
protobuf-net.dll!ProtoBuf.Internal.Serializers.InheritanceCompiledSerializer.ProtoBuf.Serializers.ISubTypeSerializer.ReadSubType(ref ProtoBuf.ProtoReader.State state, ProtoBuf.Serializers.SubTypeState value) Ligne 49 C#
protobuf-net.Core.dll!ProtoBuf.ProtoReader.State.ReadBaseType(Kiwy.Core.Engine.StructCurve value, ProtoBuf.Serializers.ISubTypeSerializer serializer) Ligne 1128 C#
protobuf-net.dll!ProtoBuf.Internal.Serializers.InheritanceCompiledSerializer.ProtoBuf.Serializers.ISerializer.Read(ref ProtoBuf.ProtoReader.State state, Kiwy.Core.Engine.StructCurve value) Ligne 20 C#
protobuf-net.Core.dll!ProtoBuf.ProtoReader.State.ReadMessage
, Kiwy.Core.Engine.StructCurve>(ProtoBuf.Serializers.SerializerFeatures features, Kiwy.Core.Engine.StructCurve value, ProtoBuf.Serializers.ISerializer serializer) Ligne 1022 C#
protobuf-net.Core.dll!ProtoBuf.ProtoReader.State.ReadRepeatedCore(ref ProtoBuf.Internal.ReadBuffer values, ProtoBuf.Serializers.SerializerFeatures category, ProtoBuf.WireType wireType, ProtoBuf.Serializers.ISerializer serializer, ProtoBuf.Serializers.SerializerFeatures features) Ligne 244 C#
protobuf-net.Core.dll!ProtoBuf.ProtoReader.State.FillBuffer(ProtoBuf.Serializers.SerializerFeatures features, ProtoBuf.Serializers.ISerializer serializer, Kiwy.Core.Engine.StructCurve initialValue) Ligne 301 C#
protobuf-net.Core.dll!ProtoBuf.Serializers.RepeatedSerializer.ReadRepeated(ref ProtoBuf.ProtoReader.State state, ProtoBuf.Serializers.SerializerFeatures features, System.Collections.Generic.List values, ProtoBuf.Serializers.ISerializer serializer) Ligne 364 C#
[Fonction Lightweight]
protobuf-net.dll!ProtoBuf.Internal.Serializers.SimpleCompiledSerializer.ProtoBuf.Serializers.ISerializer.Read(ref ProtoBuf.ProtoReader.State state, System.__Canon value) Ligne 107 C#
protobuf-net.Core.dll!ProtoBuf.ProtoReader.State.ReadMessage(ProtoBuf.Serializers.SerializerFeatures features, Kiwy.Core.Engine.StructCurveMap value, ProtoBuf.Serializers.ISerializer serializer) Ligne 1022 C#
protobuf-net.Core.dll!ProtoBuf.ProtoReader.State.ReadMessage(ProtoBuf.Serializers.SerializerFeatures features, Kiwy.Core.Engine.StructCurveMap value, ProtoBuf.Serializers.ISerializer serializer) Ligne 1010 C#
[Fonction Lightweight]
protobuf-net.dll!ProtoBuf.Internal.Serializers.SimpleCompiledSerializer.ProtoBuf.Serializers.ISerializer.Read(ref ProtoBuf.ProtoReader.State state, System.__Canon value) Ligne 107 C#
protobuf-net.Core.dll!ProtoBuf.ProtoReader.State.ReadMessage(ProtoBuf.Serializers.SerializerFeatures features, Kiwy.Core.Engine.WFrame value, ProtoBuf.Serializers.ISerializer serializer) Ligne 1022 C#
protobuf-net.Core.dll!ProtoBuf.ProtoReader.State.ReadMessage(ProtoBuf.Serializers.SerializerFeatures features, Kiwy.Core.Engine.WFrame value, ProtoBuf.Serializers.ISerializer serializer) Ligne 1010 C#
[Fonction Lightweight]
protobuf-net.dll!ProtoBuf.Internal.Serializers.InheritanceCompiledSerializer.ProtoBuf.Serializers.ISubTypeSerializer.ReadSubType(ref ProtoBuf.ProtoReader.State state, ProtoBuf.Serializers.SubTypeState value) Ligne 49 C#
protobuf-net.Core.dll!ProtoBuf.ProtoReader.State.ReadBaseType(Kiwy.Core.Engine.WConcept value, ProtoBuf.Serializers.ISubTypeSerializer serializer) Ligne 1128 C#
protobuf-net.dll!ProtoBuf.Internal.Serializers.InheritanceCompiledSerializer.ProtoBuf.Serializers.ISerializer.Read(ref ProtoBuf.ProtoReader.State state, Kiwy.Core.Engine.WConcept value) Ligne 20 C#
protobuf-net.Core.dll!ProtoBuf.ProtoReader.State.ReadMessage(ProtoBuf.Serializers.SerializerFeatures features, Kiwy.Core.Engine.WConcept value, ProtoBuf.Serializers.ISerializer serializer) Ligne 1022 C#
protobuf-net.Core.dll!ProtoBuf.ProtoReader.State.ReadRepeatedCore(ref ProtoBuf.Internal.ReadBuffer values, ProtoBuf.Serializers.SerializerFeatures category, ProtoBuf.WireType wireType, ProtoBuf.Serializers.ISerializer serializer, ProtoBuf.Serializers.SerializerFeatures features) Ligne 244 C#
protobuf-net.Core.dll!ProtoBuf.ProtoReader.State.FillBuffer(ProtoBuf.Serializers.SerializerFeatures features, ProtoBuf.Serializers.ISerializer serializer, Kiwy.Core.Engine.WConcept initialValue) Ligne 301 C#
protobuf-net.Core.dll!ProtoBuf.Serializers.RepeatedSerializer.ReadRepeated(ref ProtoBuf.ProtoReader.State state, ProtoBuf.Serializers.SerializerFeatures features, System.Collections.ObjectModel.ObservableCollection values, ProtoBuf.Serializers.ISerializer serializer) Ligne 364 C#
[Fonction Lightweight]
protobuf-net.dll!ProtoBuf.Internal.Serializers.InheritanceCompiledSerializer.ProtoBuf.Serializers.ISubTypeSerializer.ReadSubType(ref ProtoBuf.ProtoReader.State state, ProtoBuf.Serializers.SubTypeState value) Ligne 49 C#
protobuf-net.Core.dll!ProtoBuf.Serializers.SubTypeState.ReadSubType(ref ProtoBuf.ProtoReader.State state, ProtoBuf.Serializers.ISubTypeSerializer serializer) Ligne 412 C#
[Fonction Lightweight]
protobuf-net.dll!ProtoBuf.Internal.Serializers.InheritanceCompiledSerializer.ProtoBuf.Serializers.ISubTypeSerializer.ReadSubType(ref ProtoBuf.ProtoReader.State state, ProtoBuf.Serializers.SubTypeState value) Ligne 49 C#
protobuf-net.Core.dll!ProtoBuf.ProtoReader.State.ReadBaseType(Kiwy.Core.Engine.Component.Work value, ProtoBuf.Serializers.ISubTypeSerializer serializer) Ligne 1128 C#
protobuf-net.dll!ProtoBuf.Internal.Serializers.InheritanceCompiledSerializer.ProtoBuf.Serializers.ISerializer.Read(ref ProtoBuf.ProtoReader.State state, Kiwy.Core.Engine.Component.Work value) Ligne 20 C#
protobuf-net.Core.dll!ProtoBuf.ProtoReader.State.ReadMessage(ProtoBuf.Serializers.SerializerFeatures features, Kiwy.Core.Engine.Component.Work value, ProtoBuf.Serializers.ISerializer serializer) Ligne 1022 C#
protobuf-net.Core.dll!ProtoBuf.ProtoReader.State.ReadMessage(ProtoBuf.Serializers.SerializerFeatures features, Kiwy.Core.Engine.Component.Work value, ProtoBuf.Serializers.ISerializer serializer) Ligne 1010 C#
[Fonction Lightweight]
protobuf-net.dll!ProtoBuf.Internal.Serializers.SimpleCompiledSerializer.ProtoBuf.Serializers.ISerializer.Read(ref ProtoBuf.ProtoReader.State state, System.__Canon value) Ligne 107 C#
protobuf-net.Core.dll!ProtoBuf.ProtoReader.State.ReadAsRoot(Kiwy.View.Document value, ProtoBuf.Serializers.ISerializer serializer) Ligne 1157 C#
protobuf-net.Core.dll!ProtoBuf.ProtoReader.State.DeserializeRoot(Kiwy.View.Document value, ProtoBuf.Serializers.ISerializer serializer) Ligne 1139 C#
protobuf-net.dll!ProtoBuf.Serializer.Deserialize(System.IO.Stream source) Ligne 22 C#
Protobuf_V3_Plugin.dll!Protobuf_V3_Plugin.SerializerHelper.Deserialize(byte[] source) Ligne 83 C#
Код: Выделить всё
System.NullReferenceException: Object reference not set to an instance of an object.
at Kiwy.Core.Engine.StructCurve.SetCurve3D(WrapCurve3D curve3D) in C:\Dev_Sof\Kiwy\Trunk\Kiwy.Core.Engine\StructCurve.cs:line 81
at proto_55(State&, SubTypeState`1)
at ProtoBuf.Internal.Serializers.InheritanceCompiledSerializer`2.ProtoBuf.Serializers.ISubTypeSerializer.ReadSubType(State& state, SubTypeState`1 value)
at ProtoBuf.Serializers.SubTypeState`1.ReadSubType[TSubType](State& state, ISubTypeSerializer`1 serializer)
at proto_58(State&, SubTypeState`1)
at ProtoBuf.Internal.Serializers.InheritanceCompiledSerializer`2.ProtoBuf.Serializers.ISubTypeSerializer.ReadSubType(State& state, SubTypeState`1 value)
at ProtoBuf.ProtoReader.State.ReadBaseType[TBaseType,T](T value, ISubTypeSerializer`1 serializer)
at ProtoBuf.Internal.Serializers.InheritanceCompiledSerializer`2.ProtoBuf.Serializers.ISerializer.Read(State& state, T value)
at ProtoBuf.ProtoReader.State.ReadMessage[TSerializer,T](SerializerFeatures features, T value, TSerializer& serializer)
at ProtoBuf.ProtoReader.State.FillBuffer[TSerializer,T](SerializerFeatures features, TSerializer& serializer, T initialValue)
at ProtoBuf.Serializers.RepeatedSerializer`2.ReadRepeated(State& state, SerializerFeatures features, TCollection values, ISerializer`1 serializer)
at proto_53(State&, StructCurveMap)
at ProtoBuf.Internal.Serializers.SimpleCompiledSerializer`1.ProtoBuf.Serializers.ISerializer.Read(State& state, T value)
at ProtoBuf.ProtoReader.State.ReadMessage[TSerializer,T](SerializerFeatures features, T value, TSerializer& serializer)
at proto_50(State&, WFrame)
at ProtoBuf.Internal.Serializers.SimpleCompiledSerializer`1.ProtoBuf.Serializers.ISerializer.Read(State& state, T value)
at ProtoBuf.ProtoReader.State.ReadMessage[TSerializer,T](SerializerFeatures features, T value, TSerializer& serializer)
at proto_30(State&, SubTypeState`1)
at ProtoBuf.Internal.Serializers.InheritanceCompiledSerializer`2.ProtoBuf.Serializers.ISubTypeSerializer.ReadSubType(State& state, SubTypeState`1 value)
at ProtoBuf.ProtoReader.State.ReadBaseType[TBaseType,T](T value, ISubTypeSerializer`1 serializer)
at ProtoBuf.Internal.Serializers.InheritanceCompiledSerializer`2.ProtoBuf.Serializers.ISerializer.Read(State& state, T value)
at ProtoBuf.ProtoReader.State.ReadMessage[TSerializer,T](SerializerFeatures features, T value, TSerializer& serializer)
at ProtoBuf.ProtoReader.State.FillBuffer[TSerializer,T](SerializerFeatures features, TSerializer& serializer, T initialValue)
at ProtoBuf.Serializers.RepeatedSerializer`2.ReadRepeated(State& state, SerializerFeatures features, TCollection values, ISerializer`1 serializer)
at proto_4(State&, SubTypeState`1)
at ProtoBuf.Internal.Serializers.InheritanceCompiledSerializer`2.ProtoBuf.Serializers.ISubTypeSerializer.ReadSubType(State& state, SubTypeState`1 value)
at ProtoBuf.Serializers.SubTypeState`1.ReadSubType[TSubType](State& state, ISubTypeSerializer`1 serializer)
at proto_30(State&, SubTypeState`1)
at ProtoBuf.Internal.Serializers.InheritanceCompiledSerializer`2.ProtoBuf.Serializers.ISubTypeSerializer.ReadSubType(State& state, SubTypeState`1 value)
at ProtoBuf.ProtoReader.State.ReadBaseType[TBaseType,T](T value, ISubTypeSerializer`1 serializer)
at ProtoBuf.Internal.Serializers.InheritanceCompiledSerializer`2.ProtoBuf.Serializers.ISerializer.Read(State& state, T value)
at ProtoBuf.ProtoReader.State.ReadMessage[TSerializer,T](SerializerFeatures features, T value, TSerializer& serializer)
at proto_2(State&, Document)
at ProtoBuf.Internal.Serializers.SimpleCompiledSerializer`1.ProtoBuf.Serializers.ISerializer.Read(State& state, T value)
at ProtoBuf.ProtoReader.State.ReadAsRoot[T](T value, ISerializer`1 serializer)
at ProtoBuf.ProtoReader.State.DeserializeRoot[T](T value, ISerializer`1 serializer)
at ProtoBuf.Serializer.Deserialize[T](Stream source)
Вот ссылка для загрузки маленького проекта, который я сделал, пожалуйста, прочитайте readme.txt перед объяснениями
protobuf_deserialization.zip
Подробнее здесь: https://stackoverflow.com/questions/796 ... ethod-call