天天看點

[Silverlight]奇技銀巧系列-2

Silverlight奇技銀巧系列:

所有該系列中的文章隻為介紹一些Silverlight中或隐藏在Silverlight .NET framework鮮為人知的知識和技巧。這些文章并非教程,也是不是什麼技術指導,您隻需對文章介紹的内容保有印象。這些知識和技巧也許會在不經意間綻放銀色光芒。

我想對于搞web開發的人來說,JSON應該是相當親切而熟悉的字眼。

直到.NET Framework3.5,在.NET中處理JSON才變得輕松一些,而JSON.NET這類的輔助項目也讓.NET對JSON處理錦上添花。沒記錯的話是Json.NET3.0提出了JObject的概念,那真的很爽…

雖然Json.NET最近也推出了支援Silverlight的類庫項目,不過對于Silverlight這種用戶端的東西,多弄個dll進去難免影響初始化(下載下傳)速度,對于有“潔癖”的你我來說着實不夠盡善盡美。

不過System.Json拯救了我們。在Silverlight中,這個程式集提供了對JSON類型資料的支援,有了它你就可以使用c#或者vb.net代碼處理Json對象了。

該命名空間下包含4個類:

JsonValue

其他三個類的基類。它提供了用來處理string和stream的Load()、Save()、Parse()等方法。它的ToString()方法被重載,用來以字元串形式顯示原始Json.

JsonPrimitive

用來将CLR中的原始類型(如byte,string和int等)處理為Json。它一般這麼用:

<a href="http://11011.net/software/vspaste"></a>

JsonArray

該類代表一個JsonValue類型的數組。參照上面例子中的的JsonPrimitive,JsonArray可以這樣構造:

自然,ToString()以後就變成這個模樣了:

<a href="http://images.cnblogs.com/cnblogs_com/024hi/WindowsLiveWriter/Silverlight2_11FC4/image_2.png"></a>

JsonObject

用來表現鍵值對集合,它可以這樣構造:

ToString()以後:

<a href="http://images.cnblogs.com/cnblogs_com/024hi/WindowsLiveWriter/Silverlight2_11FC4/image_4.png"></a>

最後說一下JsonType枚舉,該枚舉包括

Array

Bollean

Number

Object

String

它由JsonValue的JsonType屬性傳回,反映該JsonValue的執行個體所代表的對應CLR屬性的類型。

<a href="http://images.cnblogs.com/cnblogs_com/024hi/WindowsLiveWriter/Silverlight2_11FC4/image_6.png"></a>

本文轉自紫色永恒51CTO部落格,原文連結:http://www.cnblogs.com/024hi/archive/2009/09/15/1567256.html ,如需轉載請自行聯系原作者