在C# ASP編寫JSON時,需要使用Json.NET庫來進行序列化和反序列化操作。
using Newtonsoft.Json; // 將對象序列化為JSON字符串 string json = JsonConvert.SerializeObject(obj); // 將JSON字符串反序列化為對象 T obj = JsonConvert.DeserializeObject(json);
Json.NET支持各種類型的對象序列化和反序列化,包括用戶自定義對象,動態對象,匿名類型和多層嵌套的類型等。
// 用戶自定義對象 public class Person { public string Name { get; set; } public int Age { get; set; } } Person p = new Person { Name = "Tom", Age = 25 }; string json = JsonConvert.SerializeObject(p); // {"Name":"Tom","Age":25} Person p2 = JsonConvert.DeserializeObject(json);
在ASP.NET MVC應用程序中,可以使用JsonResult返回JSON數據到客戶端。
public JsonResult GetPerson(int id) { Person p = GetPersonById(id); return Json(p, JsonRequestBehavior.AllowGet); }
上述代碼中,GetPerson方法返回一個JsonResult對象,其中包含要返回的Person對象。然后,可以使用Json方法將對象序列化為JSON字符串,并設置JsonRequestBehavior.AllowGet選項來允許GET請求。
最后,需要將JSON數據發回到客戶端進行處理。可以使用jQuery.ajax方法來進行異步HTTP請求,并在成功回調函數中解析JSON數據。
$.ajax({ url: '/Person/GetPerson', data: { id: 1 }, type: 'GET', success: function(data) { var p = JSON.parse(data); // 處理獲取到的Person對象 } });
以上是C# ASP編寫JSON的相關內容,希望對您有所幫助。