使用Json.NET轉(zhuǎn)換器反序列化屬性我有一個類定義,其中包含一個返回接口的屬性。public class Foo{
public int Number { get; set; }
public ISomething Thing { get; set; }}嘗試使用Json.NET序列化Foo類給出了一條錯誤消息,例如“無法創(chuàng)建類型為'ISomething'的實例.ISomething可能是一個接口或抽象類?!笔欠裼蠮son.NET屬性或轉(zhuǎn)換器可以讓我指定Something在反序列化期間使用的具體類?
3 回答

慕村225694
TA貢獻1880條經(jīng)驗 獲得超4個贊
如前所述,您不必使用TypeNameHandling.Objects選項將自定義JsonSerializerSettings對象傳遞給JsonConvert.SerializeObject(),而只需使用屬性標記該特定接口屬性,這樣生成的JSON就不會因“$ type”屬性而膨脹在每個對象上:
public class Foo{ public int Number { get; set; } // Add "$type" property containing type info of concrete class. [JsonProperty( TypeNameHandling = TypeNameHandling.Objects )] public ISomething { get; set; }}
- 3 回答
- 0 關(guān)注
- 420 瀏覽
添加回答
舉報
0/150
提交
取消