本文旨在介紹如果通過C#將獲取到的XML文檔轉換成對應的JSON格式字符串,然后將其輸出到頁面前端,以供JavaScript代碼解析使用。或許你可以直接利用JavaScript代碼通過Ajax的方式來讀取XML,然后直接對其中的內容進行解析,這樣或許更直接一些。但本文中給出的代碼旨在說明如何通過原生的C#代碼來完成這一轉換。除此之外,你仍然可以借用一些第三方類庫或者更高級一些的.NET庫對象來實施轉換。我們來看看這里介紹的一些較為簡單的方法,但前提是你必須擁有可支持的類庫和對象以備使用。
- 使用Json.NET類庫
前提是需要首先下載和安裝Json.NET類庫,在這里可以找到http://json.codeplex.com/
下面是一個例子:
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Xml; using Newtonsoft.Json; namespace JSonConverter { class Program { static void Main(string[] args) { string xml = "<Test><Name>Test class</Name><X>100</X><Y>200</Y></Test>"; XmlDocument doc = new XmlDocument(); doc.LoadXml(xml); string json = Newtonsoft.Json.JsonConvert.SerializeXmlNode(doc); Console.WriteLine("XML -> JSON: {0}", json); Console.ReadLine(); } } }
JSON是一個輕量級的數據交換格式,它可以非常容易地被頁面的JavaScript編碼為對象的形式,從而方便數據操作。
基於AJAX的頁面使用XmlHttpRequest對象從服務端接收數據來響應用戶的請求,當返回的數據是XML格式時,它可以被轉換為JSON格式的字符串從而通過JavaScript更加容易地對數據進行處理。
許多應用程序都將數據存儲為XML的格式,而且會將數據以JSON的格式發送到客戶端以做進一步處理。要實現這一點,它們必須將XML格式轉換為JSON格式。
