我發現自己在這一點上有點失落。如果這只是一個類結構不匹配JSON錯誤,我真的不能看到錯誤。但我懷疑它,因爲它與我用來創建JSON的類結構完全相同。Json.Net具有ObservableCollection和INotifyPropertyChange的類層次結構被序列化,但未被反序列化
如果任何人都能指引我走向正確的方向,
我已經創建了一個dotnetfiddle,以避免用巨大的代碼片斷抓住問題。這裏是鏈接:Fiddle
我生成的JSON與控制檯應用程序獲取數據庫架構上的信息。我使用一個通用項目,將其中定義的所有實體加載到內存中,然後從該結構生成JSON。然後,我在另一個應用程序中使用相同的項目與另一個應用程序中的相同實體比較另一個DB模式與JSON日誌。該應用程序無法反序列化JSON。試圖提供一個簡單的例子與一個單一的類,你可以看到在小提琴......不反序列化。 這是我的理解,ObservableCollections實際上應該序列化和反序列化沒有問題,並且INotifyPropertyChange不應該導致問題(只要你不試圖用空引用觸發事件)。所以......任何人都知道這裏發生了什麼?
編輯:忘了提。注意只有基類型字符串得到反序列化......所以它運行一些反序列化,而不是像ObservableCollection或用戶類這樣的類。也許這有助於以某種方式查明問題。
EDIT2:添加了微量的作家和JSON.Net跟蹤被檢測爲對象的權利類型,所以我猜這個問題是轉換類型或初始化一些類型
謝謝你的解釋。我確實應用了這兩個修補程序。我太專注於JSON格式,我從來沒有看過那個孤兒比如我創建。有點尷尬。 –
不用擔心。很高興我能夠提供幫助。 –