Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我正在使用 BinaryFormatter 序列化具有不同其他对象的对象。序列化导致这些对象之一的无限循环,经过数小时查看它们,我找不到该循环导致的位置。是否有可能在 VisualStudio 中逐步调试序列化过程,或者是否有其他工具可以做到这一点?
您可以尝试的一件事是[NonSerialized]向类成员添加属性,直到序列化成功。它不完全是调试,但可能会很快找到导致问题的成员。
[NonSerialized]
您可以尝试使用OnSerializing或使用OnSerialized允许您挂钩到序列化过程的属性。(见ref1和ref2)
OnSerializing
OnSerialized
它更不意味着具有以下定义
[Serializable] public class Foo{ [OnSerializing] public void DebugHook(StreamingContext context){ //here goes magic stuff... } }
方法内的断点将被visual studio捕获。