ASP.NET JSON 格式轉換
在這裡,選擇透過 (Json.NET)[https://www.newtonsoft.com/json/help/html/Introduction.htm] 這款套件來協助處理物件轉換為JSON格式
首先透過 NuGet 封裝管理員來新增套件
在專案> 右鍵 > 管理 NuGet 套件…
在 瀏覽> 輸入 json ,接著點選 Newtonsoft.Json
物件轉換JSON <=> JSON 轉換物件
透過 JsonConvert.SerializeObject 將物件轉換為JSON
JsonConvert.DeserializeObject
可以使用
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
//Newtonsoft Json
using Newtonsoft.Json;
using Newtonsoft.Json.Linq;
public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
Product product = new Product();
product.Name = "Apple";
product.ExpiryDate = new DateTime(2008, 12, 28);
product.Price = 3.99M;
product.Sizes = new string[] { "Small", "Medium", "Large" };
product.Roles = new List<string>
{
"Adam",
"Brown"
};
//將 object 轉換 json 格式
string output = JsonConvert.SerializeObject(product);
Response.Write(output);
//將json 轉換 object 格式
Product deserializedProduct = JsonConvert.DeserializeObject<Product>(output);
Response.Write(deserializedProduct.Name);
Response.Write(deserializedProduct.ExpiryDate);
Response.Write(deserializedProduct.Price);
Response.Write(deserializedProduct.Sizes[0]);
}
class Product
{
public string Name { get; set; }
public DateTime ExpiryDate { get; set; }
public Decimal Price { get; set; }
public string[] Sizes { get; set; }
public IList<string> Roles { get; set; }
}
}