107 lines
4.4 KiB
XML
107 lines
4.4 KiB
XML
<?xml version="1.0" encoding="utf-8"?>
|
|
<topic id="Introduction" revisionNumber="1">
|
|
<developerConceptualDocument xmlns="http://ddue.schemas.microsoft.com/authoring/2003/5" xmlns:xlink="http://www.w3.org/1999/xlink">
|
|
<!--
|
|
<summary>
|
|
<para>Optional summary abstract</para>
|
|
</summary>
|
|
-->
|
|
<introduction>
|
|
<para>Json.NET is a popular high-performance JSON framework for .NET</para>
|
|
</introduction>
|
|
<!-- Optional procedures followed by optional code example but must have
|
|
at least one procedure or code example -->
|
|
<section>
|
|
<title>Benefits and Features</title>
|
|
<content>
|
|
<list class="bullet">
|
|
<listItem>
|
|
<para>Flexible JSON serializer for converting between .NET objects and JSON</para>
|
|
</listItem>
|
|
<listItem>
|
|
<para>LINQ to JSON for manually reading and writing JSON </para>
|
|
</listItem>
|
|
<listItem>
|
|
<para>High performance: faster than .NET's built-in JSON serializers</para>
|
|
</listItem>
|
|
<listItem>
|
|
<para>Write indented, easy-to-read JSON</para>
|
|
</listItem>
|
|
<listItem>
|
|
<para>Convert JSON to and from XML</para>
|
|
</listItem>
|
|
<listItem>
|
|
<para>Supports <externalLink>
|
|
<linkText>.NET Standard 2.0</linkText>
|
|
<linkUri>https://github.com/dotnet/standard/blob/master/docs/versions.md</linkUri>
|
|
<linkTarget>_blank</linkTarget>
|
|
</externalLink>,
|
|
.NET 2, .NET 3.5, .NET 4, .NET 4.5, Silverlight, Windows Phone and Windows 8 Store</para>
|
|
</listItem>
|
|
|
|
</list>
|
|
<para>The JSON serializer in Json.NET is a good choice when the JSON you are reading or writing maps closely to a .NET class.</para>
|
|
<para>LINQ to JSON is good for situations where you are only interested in
|
|
getting values from JSON, you don't have a class to serialize or deserialize to,
|
|
or the JSON is radically different from your class and you need to manually read
|
|
and write from your objects.</para>
|
|
</content>
|
|
</section>
|
|
|
|
<section>
|
|
<title>Getting Started</title>
|
|
<content>
|
|
|
|
<list class="bullet">
|
|
<listItem><para><link xlink:href="SerializingJSON" /></para></listItem>
|
|
<listItem><para><link xlink:href="LINQtoJSON" /></para></listItem>
|
|
<listItem><para><link xlink:href="Samples" /></para></listItem>
|
|
</list>
|
|
|
|
</content>
|
|
</section>
|
|
<section>
|
|
<title>History</title>
|
|
<content><para>Json.NET grew out of projects I was working on in late 2005 involving JavaScript,
|
|
AJAX, and .NET. At the time there were no libraries for working with JavaScript in
|
|
.NET, so I made my own.</para>
|
|
<para>Starting out as a couple of static methods for escaping JavaScript strings, Json.NET
|
|
evolved as features were added. To add support for reading JSON a major refactor
|
|
was required, and Json.NET was split into the three major classes it still uses
|
|
today: JsonReader, JsonWriter and JsonSerializer.</para>
|
|
<para>Json.NET was first released in June 2006. Since then Json.NET has been downloaded
|
|
hundreds of thousands of times by developers from around the world. It is used in many major open
|
|
source projects, including: <externalLink>
|
|
<linkText>Mono</linkText>
|
|
<linkUri>http://www.mono-project.com/</linkUri>
|
|
<linkTarget>_blank</linkTarget>
|
|
</externalLink>,
|
|
an open source implementation
|
|
of the .NET framework; <externalLink>
|
|
<linkText>RavenDB</linkText>
|
|
<linkUri>http://ravendb.net/</linkUri>
|
|
<linkTarget>_blank</linkTarget>
|
|
</externalLink>,
|
|
a JSON based document database; <externalLink>
|
|
<linkText>ASP.NET SignalR</linkText>
|
|
<linkUri>http://signalr.net/</linkUri>
|
|
<linkTarget>_blank</linkTarget>
|
|
</externalLink>,
|
|
an async library for building real-time, multi-user interactive web applications; and <externalLink>
|
|
<linkText>ASP.NET Core</linkText>
|
|
<linkUri>http://www.asp.net</linkUri>
|
|
<linkTarget>_blank</linkTarget>
|
|
</externalLink>,
|
|
Microsoft's web app and service framework.</para>
|
|
</content>
|
|
</section>
|
|
|
|
<relatedTopics>
|
|
<link xlink:href="SerializingJSON" />
|
|
<link xlink:href="LINQtoJSON" />
|
|
<link xlink:href="Samples" />
|
|
</relatedTopics>
|
|
|
|
</developerConceptualDocument>
|
|
</topic>
|