在寫 HTML5 時,因為,需要利用 ashx 回傳 Json 字串,但如果自已寫一個 function 是不是太不方便了?
ASP.NET,其實有一個 Newtonsoft.Json.dll 可以使用,但您的VS 2010、2012也許是沒有這個dll檔案,但我建立可以利用 NuGet 來下載
但NuGet又是如何安裝?我覺得可以參考以下的連結
http://blog.miniasp.com/post/2011/05/17/Useful-Visual-Studio-2010-tool-NuGet-Package-Manager.aspx
安裝完後,可以打開 工具 >> NuGet 套件管理員 >> 套件管理器主控台
打開「主控台」後,會出現下圖:
請在 PM> 後面輸入
Install-Package Newtonsoft.Json
這樣您的 Bin 就會自動加入 Newtonsoft.Json.dll
接下來,就可以利用下面的範例:回傳至 HTML5 Client 端
using System;
using System.Web;
/*Json.NET相關的命名空間,請使用NuGet*/
using Newtonsoft.Json;
using Newtonsoft.Json.Linq;
public class GetKS_TOWN : IHttpHandler {
public void ProcessRequest (HttpContext context) {
DBTools dbtools = new DBTools();
System.Data.DataTable getLandName = dbtools.GetKS_TOWN();
//將DataTable轉成JSON字串
string str_json = JsonConvert.SerializeObject(getLandName, Formatting.Indented);
context.Response.ContentType = "text/plain";
context.Response.Write(str_json);
}
public bool IsReusable {
get {
return false;
}
}
}
以上,試試看吧!
沒有留言:
張貼留言