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

慕的地10843
TA貢獻(xiàn)1785條經(jīng)驗 獲得超8個贊

一只名叫tom的貓
TA貢獻(xiàn)1906條經(jīng)驗 獲得超3個贊
在這一點上,我認(rèn)為對我來說可能很重要,我必須使用我自己的Json轉(zhuǎn)換器來完成這項任務(wù)。我從最初的描述中刪除了它們,因為我不想提供不相關(guān)的信息。我需要能夠調(diào)用JsonConvert.SerializeObject(或使用我的轉(zhuǎn)換器的等效方法),并讓它返回json而不是字符串。返回對象只會序列化對象的ToString(),我不能這樣做。我也沒有數(shù)據(jù)契約可以使用
- 3 回答
- 0 關(guān)注
- 435 瀏覽
添加回答
舉報
0/150
提交
取消