3
我正在實現一個自定義的(和通用的)Json.net序列化程序,並在路上碰到一個碰撞,我可以使用一些幫助。得到一個實現接口的「默認」具體類
當反序列化器映射到一個屬性是一個接口時,我怎樣才能最好地確定構建要反序列化以放入接口屬性的對象類型。
我有以下幾點:
[JsonConverter(typeof(MyCustomSerializer<foo>))]
class foo
{
int Int1 { get; set; }
IList<string> StringList {get; set; }
}
我的串行正確序列化這個對象,但是當它回來的,我嘗試了JSON部分映射到反對,我有一個JArray和接口。
我目前實例什麼枚舉像列表爲
theList = Activator.CreateInstance(property.PropertyType);
該作品創造與反序列化過程中的工作,但是當屬性的IList,我得到運行時投訴(顯然)關於不能夠實例化一個接口。
那麼我怎麼會知道在這種情況下要創建什麼類型的具體類?
謝謝
謝謝。這確實奏效,我添加了使用TryGetValue的邏輯並拋出一個未找到的異常。 –
@RogerJoys:燦爛! –