Allereerst moet je begrijpen wat JSON is, je kunt https://www.ibm.com/developerworks/cn/web/wa-lo-json/ klikken om meer over JSON te leren, ik zal JSON hier kort introduceren: JSON staat voor Javascrip{filter}t Object Natation, een lichtgewicht data-uitwisselingsformaat dat ideaal is voor serverinteractie met Javascrip{filter}t. Net als XML is JSON een pletter, op tekst gebaseerd dataformaat. Omdat JSON van nature is voorbereid op Javascrip{filtering}t, is het dataformaat van JSON heel eenvoudig: je kunt een eenvoudige String, Number, Boolean, een array of een complex Object-object in JSON overzetten. In de .NET-omgeving gebruiken we Json.net om JSON-data te serialiseren en te deserialiseren.
Begin met het klikken op Connect http://json.codeplex.com/ om de JSON te downloaden. .NET-plugins en code. Maak vervolgens een referentie Newtonsoft.Json.dll in je project Naamruimte toevoegen: met Newtonsoft.Json; Hieronder volgen enkele belangrijke methoden en voorbeelden van JSON-serialisatie en deserialisatie: JsonConvert.SerializeObject(objectwaarde), die een overload-methode heeft JsonConvert.SerializeObject(objectwaarde, parameters JsonConverter[] converters). JsonConvert.DeserializeObject(stringwaarde, Type type), deserialiseerd, heeft een overload-methode JsonConvert.DeserializeObject(stringwaarde, Type type, parameters JsonConverter[] converters) Deze twee methoden kunnen voldoen aan basisserialisatie- en deserialisatievereisten, zie de volgende voorbeelden: Laten we eerst een Persoon-klassecode bouwen als volgt: Persoon van de publieke klasse { privé-snaarnaam; publieke string Naam { get { return name; } set { naam = waarde; } } particuliere leeftijd; publieke int Leeftijd { get { terugkeerleeftijd; } set { leeftijd = waarde; } } } 1) Serialisatie met behulp van System; met behulp van System.Collections.Generic; met behulp van System.Linq; gebruik van System.Web; gebruik van System.Web.UI; gebruik van System.Web.UI.WebControls; met Newtonsoft.Json;
naamruimte JSONnet
{ Openbare gedeeltelijke klas toets: System.Web.UI.Page { beschermde void Page_Load(objectafzender, EventArgs e) { Persoon, persoon = nieuwe Persoon(); persoon. Naam = "GoldenEasy"; persoon. Leeftijd = 25;
string strSerializeJSON = JsonConvert.SerializeObject(person); Response.Write(strSerializeJSON); } }
} Uitvoer: {"Naam":"GoudenEasy","Leeftijd":25} 2) deserialisering met behulp van System; met behulp van System.Collections.Generic; met behulp van System.Linq; gebruik van System.Web; gebruik van System.Web.UI; gebruik van System.Web.UI.WebControls; met Newtonsoft.Json;
naamruimte JSONnet
{ Openbare gedeeltelijke klas toets: System.Web.UI.Page { beschermde void Page_Load(objectafzender, EventArgs e) { Persoon, persoon = nieuwe Persoon(); persoon. Naam = "GoldenEasy"; persoon. Leeftijd = 25; string strSerializeJSON = JsonConvert.SerializeObject(person); Person user = (Person)JsonConvert.DeserializeObject(strSerializeJSON, typeof(Person)); Response.Write(gebruiker. naam);
} }
} Het resultaat is: GoldenEasy |