1
我已經它們經由其餘API通信的兩個應用程序,經由Json.NETJson.NET類型轉換
序列,我有與經過所述兩個應用程序之間的繼承結構困難的部分:
ChildClass1 : BaseClass
ChildClass2 : BaseClass
我需要能夠反序列化已經各自獨立地被反序列化到他們的正確的相對型基類的列表:
JsonConvert.DeserializeObject<IEnumerable<BaseClass>>(json)
我知道Ø F中的TypeNameHandling.All串行設置,但我的問題是,在每個應用程序中的類,在不同的名稱空間:
應用1:
App1.NameSpace.ChildClass1
應用2:
App2.DifferentNameSpace.ChildClass1
由於對此,它不會自動轉換它們。無法更改名稱空間或爲這些類使用合約庫。
我是否需要編寫自定義JsonReader?或者是否有一個設置,我可以用它來覆蓋序列化/反序列化時的類名,以便我可以刪除命名空間?
所以這是部分工作,通過使用這種方法我能夠刪除程序集名稱/命名空間。然而,問題在於,它也在json開始時的List初始類型中混淆了。這是我在json開始進入列表前的所有事情:{「$ type」:「List'1」,「$ values」: –
GreatSamps
修復了它。需要將TypeNameHandling.All更改爲TypeNameHandling.Object;謝謝你的幫助! – GreatSamps