在Json中有什么方法吗。Net命令它像往常一样序列化大多数类型,但要使用我在它发现类型为x的对象时提供的自定义序列化程序?
本质上,这里的想法是,如果您想在Json中对类型使用自定义序列化,请使用AFAIK。Net中,您必须指定如何在类型内完成此操作,例如通过实现ISerializable或使用属性。但是,如果我没有访问该类型的权限,则无法修改该类型的序列化。
相反,我想知道是否可以将该信息注入jsonConverter,以便它知道如何对该类型使用自定义序列化。
假设我想做这样的事情:
class A
{
B B {get; set;}
}
class B
{
}
BSerializer : ISerilalizer<B>
{
public string Serialize(B obj) => "This is a B"
}
...
JsonConverter.SerializeObject(new A{B = new B()}, new BSerializer())
这种序列化的结果是
{
"B" : "This is a B"
}
显然这个接口不存在,但是我可以使用现有的API Json做一些类似的事情吗。网络提供了什么?