我想序列化派生类并将其发送到web-api方法。 在我的WebApiConfig.cs中,我已经设置了
config.Formatters.JsonFormatter.SerializerSettings.TypeNameHandling = TypeNameHandling.Auto;
我在我的JSON(或将被序列化为JSON的JavaScript)中设置了$ type参数,但派生类仍然没有正确反序列化(总是为null)。
答案 0 :(得分:2)
这可能是因为您没有将$ type参数设置为第一个属性。 例如,这将起作用:
var param = {
$type: 'MyNamespace.MyType, MyAssemblyName', // .NET fully qualified name
name: 'test' // object properties
};
但这不起作用:
var param = {
name: 'test' // object properties
$type: 'MyNamespace.MyType, MyAssemblyName', // .NET fully qualified name
};