Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/321.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# BinaryFormatter中的TargetInvocationException,没有任何数据或程序集问题_C#_.net_Serialization - Fatal编程技术网

C# BinaryFormatter中的TargetInvocationException,没有任何数据或程序集问题

C# BinaryFormatter中的TargetInvocationException,没有任何数据或程序集问题,c#,.net,serialization,C#,.net,Serialization,我面前有一段代码,使用BinaryFormatter实现Clone()操作: public object Clone() { MemoryStream stream = new MemoryStream(); BinaryFormatter formatter = new BinaryFormatter(); formatter.Serialize(stream, this); stream.Position = 0; object result = fo

我面前有一段代码,使用BinaryFormatter实现Clone()操作:

public object Clone()
{
    MemoryStream stream = new MemoryStream();
    BinaryFormatter formatter = new BinaryFormatter();
    formatter.Serialize(stream, this);
    stream.Position = 0;
    object result = formatter.Deserialize(stream);
    return result;
}
(不,我没有写信,也没有背书)。使用此方法的人遇到这样一种情况:对该方法的调用导致来自
反序列化(流)
调用的
TargetInvocationException
InnerException
是一个
NullReferenceException

让这个特别有趣的是——有趣到可以寻求帮助——我无法访问被克隆的对象是什么

我突然想到,由于所有内容都在内存中,并且
序列化(…)
调用成功,内存中的数据应该是有效的,并且可以正确地反序列化。不存在不匹配或缺少程序集或数据损坏的情况

序列化对象可能包含事件和/或委托,但我的印象是,如果这些事件和/或委托导致任何问题,
Serialize(…)
调用将失败


有人知道这可能是什么原因吗?我对此完全不知所措。

实现ISerializable接口的类可以在序列化/反序列化时运行任意代码。NullReferenceException的堆栈跟踪是什么?使用调试器。和Debug+Exception,勾选抛出的框。原因可能与-,有趣的是,你可能永远都不知道:)