JSON

JSON.NET¶ÔÏóÐòÁл¯Ê¾Àý½Ì³Ì

×ÖºÅ+ ×÷ÕߣºH5Ö®¼Ò À´Ô´£ºH5Ö®¼Ò 2015-10-05 18:14 ÎÒÒªÆÀÂÛ( )

JSON×÷ΪһÖÖÇáÁ¿¼¶µÄÊý¾Ý½»»»¸ñʽ£¬¼òµ¥Áé»î£¬±»ºÜ¶àϵͳÓÃÀ´Êý¾Ý½»»¥£¬×÷ΪһÃû.NET¿ª·¢ÈËÔ±£¬JSON.NETÎÞÒÉÊÇ×îºÃµÄÐòÁл¯¿ò¼Ü£¬Ö§³ÖXMLºÍJSONÐòÁл¯£¬¸ßÐÔÄÜ

ÄãµÄλÖãºÁã¶È > ¸ü¶à·¢ÏÖ > JSON.NET¶ÔÏóÐòÁл¯Ê¾Àý½Ì³Ì

JSON.NET¶ÔÏóÐòÁл¯Ê¾Àý½Ì³Ì

¸ü¶à·¢ÏÖ admin 1¸öÔÂǰ (08-24) 264ä¯ÀÀ

json-net-logo


JSON×÷ΪһÖÖÇáÁ¿¼¶µÄÊý¾Ý½»»»¸ñʽ£¬¼òµ¥Áé»î£¬±»ºÜ¶àϵͳÓÃÀ´Êý¾Ý½»»¥£¬×÷ΪһÃû.NET¿ª·¢ÈËÔ±£¬JSON.NETÎÞÒÉÊÇ×îºÃµÄÐòÁл¯¿ò¼Ü£¬Ö§³ÖXMLºÍJSONÐòÁл¯£¬¸ßÐÔÄÜ£¬Ãâ·Ñ¿ªÔ´£¬Ö§³ÖLINQ²éѯ¡£Ä¿Ç°Òѱ»Î¢Èí¼¯³ÉÓÚwebapi¿ò¼ÜÖ®ÖУ¬Òò´Ë£¬ÊìÁ·ÕÆÎÕJSON.NETÏàµ±ÖØÒª£¬ÕâÆªÎÄÕÂÊÇÁã¶È²Î¿¼¹ÙÍøÕûÀíµÄʾÀý£¬Í¨¹ýÕâЩʾÀý£¬¿ÉÒÔÈ«ÃæÁ˽âJSON.NETÌṩµÄ¹¦ÄÜ¡£

ÓëÆäËüÈοò¼ÜÒ»Ñù£¬ÒªÊ¹ÓÃJSON.NET¿ò¼Ü£¬Ê×ÏÈÐèÒªÔÚÄúµÄÏîÄ¿ÖÐÒýÓÃËü£¬¿ò¼Ü¿ÉÒÔµã»÷ÕâÀïµ½GITHUB¿ªÔ´ÉçÇøÏÂÔØ£¬È»ºó¸ù¾ÝÄúÏîÄ¿µÄ°æ±¾Ö±½ÓÒýÓÃnewtonsoft.json.dll¼´¿É£¬¸ü¿ì½ÝµÄ·½·¨ÊÇͨ¹ýNUGETÌṩµÄ°ü¹ÜÀíÆ÷À´½øÐа²×°£¬°²×°·½Ê½ÈçÏÂËùʾ¡£´ò¿ªVisualStudio2013£¬µ¥»÷¡¼¹¤¾ß¡½£¬ÔÚ¡¼NuGet³ÌÐò°ü¹ÜÀíÆ÷¡½²Ëµ¥ÏÂÑ¡ÖС¼³ÌÐò°ü¹ÜÀíÆ÷¿ØÖÆÌ¨¡½£¬ÔÚ¿ØÖÆÌ¨ÊäÈëÒÔÏÂÃüÁîºó£¬»Ø³µ¼´¿É×Ô¶¯°²×°×îа档

Install-Package Newtonsoft.Json

JSON.NET¿ò¼Ü°²×°Íê³Éºó£¬¾Í¿ÉÒÔÔÚÄúµÄ³ÌÐòÖÐʹÓÃËü£¬ÏÂÃæ¾ÍÊÇÁã¶ÈÌṩµÄJSON.NETʹÓÃʾÀý£¬ÆäÖÐÂÌÉ«´úÂë±íʾʾÀýµÄÊä³ö½á¹û£¬ÎªÁ˱ãÓÚÔĶÁ£¬ÎÒÃÇͨ¹ýFormatting.Indented½«´úÂë¸ñʽ»¯Êä³ö¡£

1¡¢Ê¹ÓÃJSON.NETÐòÁл¯¶ÔÏó public class Account { ; } ; } ; } ; } } Account { Email = "james@example.com", Active = true, CreatedDate = .Utc), Roles = } }; .Indented); Console.WriteLine(json); { "Email": "james@example.com", "Active": true, "CreatedDate": "2013-01-20T00:00:00Z", "Roles": [ "User", "Admin" ] } 2¡¢Ê¹ÓÃJSON.NETÐòÁл¯List¼¯ºÏ }; .SerializeObject(videogames); Console.WriteLine(json); ["Áã¶È","·ÖÏí","±à³ÌÖ®ÃÀ"] 3¡¢Ê¹ÓÃJSON.NETÐòÁл¯dictionary×Öµä , 11926 } }; .Indented); Console.WriteLine(json); { "James": 9001, "Jo": 3474, "Jess": 11926 } 4¡¢½«ÐòÁл¯½á¹û±£´æµ½Ö¸¶¨µÄÎļþ public class Movie { ; } ; } } , Year = 1995 }; )) { (); serializer.Serialize(file, movie); } 5¡¢»ùÓÚö¾ÙÀàÐ͵ÄJsonConvertersת»»Æ÷ > { StringComparison.CurrentCulture, StringComparison.InvariantCulture }; .SerializeObject(stringComparisons); Console.WriteLine(jsonWithoutConverter); [0,2] ()); Console.WriteLine(jsonWithConverter); ["CurrentCulture","InvariantCulture"] ()); CurrentCulture, InvariantCulture 6¡¢Í¨¹ýJRaw½«JSº¯ÊýÐòÁл¯µ½JSONÖÐ public class JavaScriptSettings { ; } ; } } JavaScriptSettings { OnLoadFunction = ), OnUnloadFunction = ) }; .Indented); Console.WriteLine(json); { "OnLoadFunction": OnLoad, "OnUnloadFunction": function(e) { alert(e); } } 7¡¢Ê¹ÓÃJSON.NET·´ÐòÁл¯¶ÔÏó public class Account { ; } ; } ; } ; } } string json = @"{ 'Email': 'james@example.com', 'Active': true, 'CreatedDate': '2013-01-20T00:00:00Z', 'Roles': [ 'User', 'Admin' ] }"; >(json); Console.WriteLine(account.Email); james@example.com 8¡¢Ê¹ÓÃJSON.NET·´ÐòÁл¯List¼¯ºÏ ; >>(json); Starcraft, Halo, Legend of Zelda 9¡¢Ê¹ÓÃJSON.NET·´ÐòÁл¯dictionary×Öµä ; >>(json); 10¡¢ÐòÁл¯varÄäÃûÀàÐÍ

ÓÐʱºò£¬ÎÒÃDz¢²»ÐèÒªÏȶ¨ÒåÒ»¸öÀ࣬ȻºónewÒ»¸ö¶ÔÏóºóÔÙ½øÐÐÐòÁл¯£¬JSON.NETÖ§³ÖÄäÃûÀàÐ͵ÄÐòÁл¯ºÍ·´ÐòÁл¯¡£

}; .SerializeObject(definition); Console.WriteLine(json); { "Name": "Áã¶È±à³Ì", "Site": "www.xcode.me" } }; ; .DeserializeAnonymousType(json, definition); Console.WriteLine(webSite.Name); Áã¶È±à³Ì 11¡¢ÓÃÐÂJSON×Ö·û´®Ìî³äÖ¸¶¨¶ÔÏóµÄÊôÐÔÖµ Account { Email = "james@example.com", Active = true, CreatedDate = .Utc), Roles = } }; ; JsonConvert.PopulateObject(json, account); Console.WriteLine(account.Active); false

ÉÏÃæµÄʾÀýÖУ¬account¶ÔÏóµÄActiveÖµÊ×´ÎÉèÖÃΪtrue£¬¿Éͨ¹ýPopulateObject·½·¨Í¨¹ýjson×Ö·û´®ÖØÐÂÌî³äActiveÊôÐÔºÍRolesÊôÐÔ¡£

12¡¢Ê¹ÓÃJSON.NET·´ÐòÁл¯Ê±¿ÉÖ¸¶¨¹¹Ô캯Êý

¡¡

1.±¾Õ¾×ñÑ­ÐÐÒµ¹æ·¶£¬ÈκÎ×ªÔØµÄ¸å¼þ¶¼»áÃ÷È·±ê×¢×÷ÕߺÍÀ´Ô´£»2.±¾Õ¾µÄÔ­´´ÎÄÕ£¬Çë×ªÔØÊ±Îñ±Ø×¢Ã÷ÎÄÕÂ×÷ÕߺÍÀ´Ô´£¬²»×ðÖØÔ­´´µÄÐÐΪÎÒÃǽ«×·¾¿ÔðÈΣ»3.×÷ÕßͶ¸å¿ÉÄܻᾭÎÒÃDZ༭Ð޸Ļò²¹³ä¡£

Ïà¹ØÎÄÕÂ
  •  JSONÈëÃż¶Ñ§Ï°×ܽá-JSONÊý¾Ý½á¹¹

    JSONÈëÃż¶Ñ§Ï°×ܽá-JSONÊý¾Ý½á¹¹

    2016-02-25 11:05

  • ×Ô¶¨Òåjinja2 ¹ýÂËÆ÷

    ×Ô¶¨Òåjinja2 ¹ýÂËÆ÷

    2016-02-14 10:00

  • JavaScriptת»»Óë½âÎöJSON·½·¨ÊµÀýÏê½âµÚ1/2Ò³

    JavaScriptת»»Óë½âÎöJSON·½·¨ÊµÀýÏê½âµÚ1/2Ò³

    2016-02-10 21:25

  • ASP.NET Web API 2 ·µ»Ø Json¸ñʽ

    ASP.NET Web API 2 ·µ»Ø Json¸ñʽ

    2016-02-10 17:18

ÍøÓѵãÆÀ
¹