$type被JSON反序列化忽略,尽管TypeNameHandling被设置为Auto
本文关键字:TypeNameHandling 尽管 设置 Auto type JSON 反序列化 | 更新日期: 2023-09-27 18:10:31
我想序列化一个派生类并将其发送给web-api方法。在我的WebApiConfig.cs中,我设置了
config.Formatters.JsonFormatter.SerializerSettings.TypeNameHandling = TypeNameHandling.Auto;
我已经设置了$type参数在我的JSON(或JavaScript将被序列化为JSON),但派生类仍然没有得到正确的反序列化(总是null)。
这可能是因为您没有将$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
};