最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

C#實現(xiàn)JSON字符串序列化與反序列化的方法

 更新時間:2017年01月04日 14:24:23   作者:笨笨丁  
在這篇文章中,我們將會學到如何使用C#,來序列化對象成為Json格式的數(shù)據(jù),以及如何反序列化Json數(shù)據(jù)到對象。

C#將對象序列化成JSON字符串

public string GetJsonString() 
{ 
 List<Product> products = new List<Product>(){ 
 new Product(){Name="蘋果",Price=5}, 
 new Product(){Name="橘子",Price=5}, 
 new Product(){Name="干柿子",Price=00} 
 }; 
 ProductList productlist = new ProductList(); 
 productlistGetProducts = products; 
 return new JavaScriptSerializer()Serialize(productlist)); 
} 
 
public class Product 
{ 
 public string Name { get; set; } 
 public double Price { get; set; } 
} 
 
public class ProductList 
{ 
 public List<Product> GetProducts { get; set; } 
} 

這里主要是使用JavaScriptSerializer來實現(xiàn)序列化操作,這樣我們就可以把對象轉(zhuǎn)換成Json格式的字符串,生成的結(jié)果如下:

復制代碼 代碼如下:

{"GetProducts":[{"Name":"蘋果","Price":5},{"Name":"橘子","Price":5},{"Name":"柿子","Price":16}]}

如何將Json字符串轉(zhuǎn)換成對象使用呢?

在實際開發(fā)中,經(jīng)常有可能遇到用JS傳遞一個Json格式的字符串到后臺使用,如果能自動將字符串轉(zhuǎn)換成想要的對象,那進行遍歷或其他操作時,就方便多了。那具體是如何實現(xiàn)的呢?

public static List<T> JSONStringToList<T>(this string JsonStr) 
{ 
 JavaScriptSerializer Serializer = new JavaScriptSerializer(); 
 List<T> objs = SerializerDeserialize<List<T>>(JsonStr); 
 return objs; 
} 
 
public static T Deserialize<T>(string json) 
{ 
 T obj = ActivatorCreateInstance<T>(); 
 using (MemoryStream ms = new MemoryStream(EncodingUTFGetBytes(json))) 
 { 
 DataContractJsonSerializer serializer = new DataContractJsonSerializer(objGetType()); 
 return (T)serializerReadObject(ms); 
 } 
} 
 
string JsonStr = "[{Name:'蘋果',Price:5},{Name:'橘子',Price:5},{Name:'柿子',Price:16}]"; 
List<Product> products = new List<Product>(); 
products = JSONStringToList<Product>(JsonStr); 
 
foreach (var item in products) 
{ 
 ResponseWrite(itemName + ":" + itemPrice + "<br />"); 
} 
 
public class Product 
{ 
 public string Name { get; set; } 
 public double Price { get; set; } 
} 

在上面的例子中,可以很方便的將Json字符串轉(zhuǎn)換成List對象,操作的時候就方便多了~

以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關文章

  • C#實現(xiàn)TIF圖像轉(zhuǎn)PDF文件的方法

    C#實現(xiàn)TIF圖像轉(zhuǎn)PDF文件的方法

    這篇文章主要介紹了C#實現(xiàn)TIF圖像轉(zhuǎn)PDF文件的方法,涉及C#使用TIFtoPDF工具實現(xiàn)pdf文件轉(zhuǎn)換的技巧,需要的朋友可以參考下
    2015-07-07
  • C# 泛型集合的自定義類型排序的實現(xiàn)

    C# 泛型集合的自定義類型排序的實現(xiàn)

    這篇文章主要介紹了C# 泛型集合的自定義類型排序的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-11-11
  • C#中Response.Write常見問題匯總

    C#中Response.Write常見問題匯總

    這篇文章主要介紹了C#中Response.Write常見問題匯總,總結(jié)了C#中Response.Write的常用技巧,非常實用,需要的朋友可以參考下
    2014-09-09
  • 詳解C# WinForm如何優(yōu)雅的處理異常

    詳解C# WinForm如何優(yōu)雅的處理異常

    在運行、調(diào)試代碼的時候,會遇到一些異常情況,很多時候我們代碼寫得足夠健壯,所以出現(xiàn)的概率比較低,但如果一出現(xiàn),我們又沒處理好,就可能會導致程序的崩潰、退出。本文主要介紹了WinForm處理異常的方法,需要的可以參考下
    2022-09-09
  • C# using語法糖圖文詳解

    C# using語法糖圖文詳解

    這篇文章主要給大家介紹了關于C# using語法糖的相關資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2021-01-01
  • C#畫圓角矩形的方法

    C#畫圓角矩形的方法

    這篇文章主要介紹了C#畫圓角矩形的方法,涉及C#繪圖的相關技巧,具有一定參考借鑒價值,需要的朋友可以參考下
    2015-05-05
  • C#模式畫刷HatchBrush用法實例

    C#模式畫刷HatchBrush用法實例

    這篇文章主要介紹了C#模式畫刷HatchBrush用法,實例分析了模式畫刷HatchBrush繪圖的相關技巧,需要的朋友可以參考下
    2015-06-06
  • C#編程實現(xiàn)自定義熱鍵的方法

    C#編程實現(xiàn)自定義熱鍵的方法

    這篇文章主要介紹了C#編程實現(xiàn)自定義熱鍵的方法,涉及C#鍵盤按鍵設置的相關技巧,具有一定參考借鑒價值,需要的朋友可以參考下
    2015-08-08
  • C#通過指針實現(xiàn)快速拷貝的方法

    C#通過指針實現(xiàn)快速拷貝的方法

    這篇文章主要介紹了C#通過指針實現(xiàn)快速拷貝的方法,涉及C#指針的相關使用技巧,需要的朋友可以參考下
    2015-06-06
  • C#通過熱鍵控制顯示器開關的方法

    C#通過熱鍵控制顯示器開關的方法

    這篇文章主要介紹了C#通過熱鍵控制顯示器開關的方法,涉及C#針對熱鍵的操作技巧,非常具有實用價值,需要的朋友可以參考下
    2014-12-12

最新評論

静乐县| 鄂托克前旗| 突泉县| 吴忠市| 微博| 南漳县| 河曲县| 铅山县| 九龙县| 定西市| 永平县| 海晏县| 昌平区| 习水县| 灵丘县| 习水县| 泰宁县| 阜平县| 晋州市| 江口县| 河曲县| 荔浦县| 东山县| 宜兰市| 蒙城县| 大连市| 怀集县| 桑日县| 闽清县| 波密县| 九台市| 屯昌县| 凤台县| 渝中区| 葫芦岛市| 云安县| 绥江县| 靖安县| 金沙县| 北海市| 全州县|