亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

JSON.NET解析器*似乎是雙序列化我的對象

JSON.NET解析器*似乎是雙序列化我的對象

收到一只叮咚 2019-07-22 10:12:08
JSON.NET解析器*似乎是雙序列化我的對象我的問題是:這是從我的WebAPI控制器返回的響應。"[    [       {\"id\":\"identifier\"},       {\"name\":\"foobar\"}    ]]"注意,響應被包裝在引號中,所有嵌入的引號都被轉義。這顯然是個問題。是否有任何設置可以提供給JSON.NET序列化程序以防止這種情況發生?編輯正如p.s.w.g在他的回復中猜測的那樣,我使用的是JSON.NET的JsonConvert.SerializeObject(instance)來執行我的序列化。我這樣做是因為當我構建我的自定義轉換器時,我已經將它們包含在Json轉換器中,在我的WepApiConfig中包含了DefaultSettings(顯然,我認為這不會是一個問題)我以前曾嘗試將HttpGets的返回類型交換為“MyObjecttype”,響應是對象的ToString()方法的json表示形式…它讓我知道序列化不是通過我的轉換器傳遞的。將我的HttpGets的返回類型從String更改為“MyObject類型”,并將這些轉換器直接插入WebAPi的默認HttpConfiguration中。config.Formatters.JsonFormatter.SerializerSettings.Converters.Add(new FooConverter());config.Formatters.JsonFormatter.SerializerSettings.Converters.Add(new BarConverter());簡單的方法。
查看完整描述

3 回答

?
慕的地10843

TA貢獻1785條經驗 獲得超8個贊

API在發送共鳴之前進行序列化。例如:返回OK(YourUnSerializedObject);

沒必要幫你唱。


查看完整回答
反對 回復 2019-07-22
?
一只名叫tom的貓

TA貢獻1906條經驗 獲得超3個贊

在這一點上,我認為對我來說可能很重要,我必須使用我自己的Json轉換器來完成這項任務。我從最初的描述中刪除了它們,因為我不想提供不相關的信息。我需要能夠調用JsonConvert.SerializeObject(或使用我的轉換器的等效方法),并讓它返回json而不是字符串。返回對象只會序列化對象的ToString(),我不能這樣做。我也沒有數據契約可以使用

查看完整回答
反對 回復 2019-07-22
  • 3 回答
  • 0 關注
  • 442 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號