获取ServiceStack以保留类型信息我使用ServiceStack将一些对象序列化和反序列化为JSON。考虑这个例子:public class Container{ public Animal Animal { get; set; }}public class Animal{}public class Dog : Animal{ public void Speak() { Console.WriteLine("Woof!"); }}var container = new Container { Animal = new Dog() };var json = JsonSerializer.SerializeToString(container);var container2 = JsonSerializer.DeserializeFromString<Container>(json);((Dog)container.Animal).Speak(); //Works((Dog)container2.Animal).Speak(); //InvalidCastException最后一行抛出一个InvalidCastException,因为Properties字段实例化为动物类型,而不是狗类型。有什么方法可以告诉ServiceStack保留这个特定实例属于Dog类型的信息吗?
3 回答
哆啦的时光机
TA贡献1779条经验 获得超6个赞
Interfaces
object
abstract
Animal
- 3 回答
- 0 关注
- 401 浏览
添加回答
举报
0/150
提交
取消