[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。它一般這么用:
var jInt = new JsonPrimitive(25); var jString = new JsonPrimitive("abc"); var jDouble = new JsonPrimitive(3.14);- JsonArray
該類代表一個JsonValue類型的數組。參照上面例子中的的JsonPrimitive,JsonArray可以這樣構造:
var ar = new JsonArray { jInt, jString, jDouble };自然,ToString()以后就變成這個模樣了:
- JsonObject
用來表現鍵值對集合,它可以這樣構造:
var ob = new JsonObject {{"jInt", jInt}, {"jString", jString}, {"jDouble", jDouble} };ToString()以后:
最后說一下JsonType枚舉,該枚舉包括
- Array
- Bollean
- Number
- Object
- String
它由JsonValue的JsonType屬性返回,反映該JsonValue的實例所代表的對應CLR屬性的類型。
System.Text.StringBuilder sb = new System.Text.StringBuilder(); sb.AppendLine("JInt的JsonType:" + jInt.JsonType); sb.AppendLine("jString的JsonType:" + jString.JsonType); sb.AppendLine("jDouble的JsonType:" + jDouble.JsonType); sb.AppendLine("ar的JsonType:" + ar.JsonType); sb.AppendLine("ob的JsonType:" + ob.JsonType); outputBlock.Text = sb.ToString();?
轉載于:https://www.cnblogs.com/024hi/archive/2009/09/15/1567256.html
總結
以上是生活随笔為你收集整理的[Silverlight]奇技银巧系列-2的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: tornado 第一篇
- 下一篇: linux rz 安装包,Linux系统