C#是一門強類型語言,與之配套的是實體類。實體類是用于描述具有共同屬性的一組對象。因為數據傳輸和存儲基本上是以文本的形式進行的,因此在C#中,將實體類與JSON相結合進行數據的傳輸和存儲就變得非常方便了。
public class Person { public string Name { get; set; } public int Age { get; set; } public string Gender { get; set; } }
上方的實體類描述了人的一些基本屬性,然而,我們將這個實體類寫成JSON格式,就像這樣:
{ "Name": "Tom", "Age": 22, "Gender": "Male" }
上面的代碼是JSON格式的Person實體類對應的數據。如果我們需要將JSON格式數據轉換為Person實體類,或將Person實體類轉換為JSON格式數據,C#已經提供了很好用的類幫助我們完成這個轉換過程。
//將JSON格式字符串轉換為Person實體類 string jsonStr = "{\"Name\": \"Tom\",\"Age\": 22,\"Gender\": \"Male\"}"; Person person = JsonConvert.DeserializeObject(jsonStr); //將Person實體類轉換為JSON格式字符串 Person person = new Person() { Name = "Tom", Age = 22, Gender = "Male" }; string jsonStr = JsonConvert.SerializeObject(person);
使用JsonConvert.DeserializeObject()方法可以將JSON格式字符串轉換為Person實體類,使用JsonConvert.SerializeObject()方法可以將Person實體類轉換為JSON格式字符串。
除了上面提到的JsonConvert類之外,C#還有很多其他的類可以完成實體轉換的操作。總之,實體類與JSON是C#中非常常用的數據傳輸和存儲方式,熟練使用C#的實體轉換方法可以很好的提高開發效率。