我正在尝试与一个我无法控制的系统进行通信,但是其中一个方法需要一个HttpPostedFile,我的代码中有一个字节数组.有没有人有一个实例化HttpPostedFile的例子,因为我知道它的构造函数是内部的?
我发现的最好的是这个SO帖子使用反射然而他们被引导到另一个方向,我不能采取,因为我无法修改第三方系统方法签名.
希望这是一个我忽略的简单修复.我有一个对象传递到一个事件处理程序,我想使用JSON.NET序列化该对象,如下所示:
public void OnEvent(IEventObject foo)
{
// Serialize foo to string/disk here?
var data = JsonConvert.SerializeObject(foo, Formatting.Indented);
}
Run Code Online (Sandbox Code Playgroud)
似乎foo的一个或多个成员是流.我已经认识到Streams不可序列化,因为它们是数据的抽象而不是数据本身.这是有道理的.
我不知道如何序列化这个对象:
对此的一个重要警告是我无法访问IEventObject或其实现,因此我无法使用属性标记标记任何这些对象.
我提出的唯一解决方案是将此对象包装在我自己的类中,对其进行适当标记,然后对其进行序列化.稍后我会反序列化回我自己的类,并将其转换为原始对象.我不喜欢这种方法,因为它涉及额外的对象和转换步骤,并且如果可能的话希望避免它.