这可能太麻烦了,但我有一个对象,我试图反序列化,看起来像这样:
{
"Status": { ... a status object ... }
"Data" : {... could be any one of 10 other data classes I have ... }
}
我想将此对象反序列化为一个响应类,如下所示:
public class Response
{
public Status Status;
public Stream Data;
}
然后将Data属性反序列化为另一个类。但是,如果我将数据属性的类型设为Stream,则在尝试反序列化时会出现安全异常。同样,如果我使它成为一个字符串,反序列化只是调用数据对象上的toString()方法(在反序列化后)并将其作为属性,这是没有用的。
有没有办法完成这样的事情?我试图避免使用10个不同的类,它们看起来很像响应,但只是为Data属性设置了不同的类型。如果有一种方法可以动态设置Data属性的类型,也可以解决这种情况。
感谢您的帮助!