-Documentation

This commit is contained in:
James Newton-King
2015-02-16 23:31:52 +13:00
parent 7c57b1663c
commit f132b87eaa
31 changed files with 1231 additions and 14 deletions
+9 -4
View File
@@ -35,10 +35,15 @@
older versions of Json.NET, then change the
<codeEntityReference>T:Newtonsoft.Json.DateFormatHandling</codeEntityReference>
setting to MicrosoftDateFormat.</para>
<para>Json.NET also has the <codeEntityReference>T:Newtonsoft.Json.DateTimeZoneHandling</codeEntityReference>
setting. This can be
used to convert a DateTime's kind when serializing. For example set
DateTimeZoneHandling to Utc to serialize all DateTimes as UTC dates.</para>
<para>The <codeEntityReference>T:Newtonsoft.Json.DateTimeZoneHandling</codeEntityReference> setting can be
used to convert a DateTime's <codeEntityReference>T:System.DateTimeKind</codeEntityReference> when serializing. For example set
DateTimeZoneHandling to Utc to serialize all DateTimes as UTC dates. Note that this setting does not effect DateTimeOffsets.</para>
<para>If your dates don't follow the ISO 8601 standard, then the DateFormatString setting can be used to customize the format of
date strings that are read and written using .NET's <externalLink>
<linkText>custom date and time format syntax</linkText>
<linkUri>https://msdn.microsoft.com/en-us/library/8kb3ddd4.aspx</linkUri>
<linkTarget>_blank</linkTarget>
</externalLink>.</para>
</content>
</section>
<section>
+14
View File
@@ -0,0 +1,14 @@
<?xml version="1.0" encoding="utf-8"?>
<topic id="JTokenAnnotation" revisionNumber="1">
<developerConceptualDocument xmlns="http://ddue.schemas.microsoft.com/authoring/2003/5" xmlns:xlink="http://www.w3.org/1999/xlink">
<introduction>
<para>This sample uses annotations with LINQ to JSON objects.</para>
</introduction>
<section>
<title>Sample</title>
<content>
<code lang="cs" source="..\Src\Newtonsoft.Json.Tests\Documentation\Samples\Linq\JTokenAnnotation.cs" region="Usage" title="Usage" />
</content>
</section>
</developerConceptualDocument>
</topic>
+14
View File
@@ -0,0 +1,14 @@
<?xml version="1.0" encoding="utf-8"?>
<topic id="MergeJson" revisionNumber="1">
<developerConceptualDocument xmlns="http://ddue.schemas.microsoft.com/authoring/2003/5" xmlns:xlink="http://www.w3.org/1999/xlink">
<introduction>
<para>This sample merges LINQ to JSON objects.</para>
</introduction>
<section>
<title>Sample</title>
<content>
<code lang="cs" source="..\Src\Newtonsoft.Json.Tests\Documentation\Samples\Linq\MergeJson.cs" region="Usage" title="Usage" />
</content>
</section>
</developerConceptualDocument>
</topic>
@@ -0,0 +1,18 @@
<?xml version="1.0" encoding="utf-8"?>
<topic id="QueryJsonSelectTokenJsonPath" revisionNumber="1">
<developerConceptualDocument xmlns="http://ddue.schemas.microsoft.com/authoring/2003/5" xmlns:xlink="http://www.w3.org/1999/xlink">
<introduction>
<para>This sample loads JSON and then queries values from it using <codeEntityReference>M:Newtonsoft.Json.Linq.JToken.SelectToken(System.String)</codeEntityReference> with a <externalLink>
<linkText>JSONPath</linkText>
<linkUri>http://stackoverflow.com/tags/jsonpath</linkUri>
<linkTarget>_blank</linkTarget>
</externalLink> query.</para>
</introduction>
<section>
<title>Sample</title>
<content>
<code lang="cs" source="..\Src\Newtonsoft.Json.Tests\Documentation\Samples\Linq\QueryJsonSelectTokenJsonPath.cs" region="Usage" title="Usage" />
</content>
</section>
</developerConceptualDocument>
</topic>
@@ -0,0 +1,14 @@
<?xml version="1.0" encoding="utf-8"?>
<topic id="DefaultSettings" revisionNumber="1">
<developerConceptualDocument xmlns="http://ddue.schemas.microsoft.com/authoring/2003/5" xmlns:xlink="http://www.w3.org/1999/xlink">
<introduction>
<para>This sample serializes and deserializes JSON using <codeEntityReference>P:Newtonsoft.Json.JsonConvert.DefaultSettings</codeEntityReference>.</para>
</introduction>
<section>
<title>Sample</title>
<content>
<code lang="cs" source="..\Src\Newtonsoft.Json.Tests\Documentation\Samples\Serializer\DefaultSettings.cs" region="Usage" title="Usage" />
</content>
</section>
</developerConceptualDocument>
</topic>
@@ -0,0 +1,15 @@
<?xml version="1.0" encoding="utf-8"?>
<topic id="DeserializeDateFormatString" revisionNumber="1">
<developerConceptualDocument xmlns="http://ddue.schemas.microsoft.com/authoring/2003/5" xmlns:xlink="http://www.w3.org/1999/xlink">
<introduction>
<para>This sample uses the DateFormatString
setting to control how <codeEntityReference>T:System.DateTime</codeEntityReference> and <codeEntityReference>T:System.DateTimeOffset</codeEntityReference> are deserialized.</para>
</introduction>
<section>
<title>Sample</title>
<content>
<code lang="cs" source="..\Src\Newtonsoft.Json.Tests\Documentation\Samples\Serializer\DeserializeDateFormatString.cs" region="Usage" title="Usage" />
</content>
</section>
</developerConceptualDocument>
</topic>
@@ -0,0 +1,15 @@
<?xml version="1.0" encoding="utf-8"?>
<topic id="DeserializeExtensionData" revisionNumber="1">
<developerConceptualDocument xmlns="http://ddue.schemas.microsoft.com/authoring/2003/5" xmlns:xlink="http://www.w3.org/1999/xlink">
<introduction>
<para>This sample deserializes JSON to an object with extension data.</para>
</introduction>
<section>
<title>Sample</title>
<content>
<code lang="cs" source="..\Src\Newtonsoft.Json.Tests\Documentation\Samples\Serializer\DeserializeExtensionData.cs" region="Types" title="Types" />
<code lang="cs" source="..\Src\Newtonsoft.Json.Tests\Documentation\Samples\Serializer\DeserializeExtensionData.cs" region="Usage" title="Usage" />
</content>
</section>
</developerConceptualDocument>
</topic>
@@ -0,0 +1,14 @@
<?xml version="1.0" encoding="utf-8"?>
<topic id="DeserializeImmutableCollections" revisionNumber="1">
<developerConceptualDocument xmlns="http://ddue.schemas.microsoft.com/authoring/2003/5" xmlns:xlink="http://www.w3.org/1999/xlink">
<introduction>
<para>This sample deserializes JSON into an immutable collection.</para>
</introduction>
<section>
<title>Sample</title>
<content>
<code lang="cs" source="..\Src\Newtonsoft.Json.Tests\Documentation\Samples\Serializer\DeserializeImmutableCollections.cs" region="Usage" title="Usage" />
</content>
</section>
</developerConceptualDocument>
</topic>
@@ -0,0 +1,15 @@
<?xml version="1.0" encoding="utf-8"?>
<topic id="DeserializeMetadataPropertyHandling" revisionNumber="1">
<developerConceptualDocument xmlns="http://ddue.schemas.microsoft.com/authoring/2003/5" xmlns:xlink="http://www.w3.org/1999/xlink">
<introduction>
<para>This sample deserializes JSON with <codeEntityReference>T:Newtonsoft.Json.MetadataPropertyHandling</codeEntityReference>
set to ReadAhead so that metadata properties do not need to be at the start of an object.</para>
</introduction>
<section>
<title>Sample</title>
<content>
<code lang="cs" source="..\Src\Newtonsoft.Json.Tests\Documentation\Samples\Serializer\DeserializeMetadataPropertyHandling.cs" region="Usage" title="Usage" />
</content>
</section>
</developerConceptualDocument>
</topic>
@@ -0,0 +1,14 @@
<?xml version="1.0" encoding="utf-8"?>
<topic id="DeserializeWithDependencyInjection" revisionNumber="1">
<developerConceptualDocument xmlns="http://ddue.schemas.microsoft.com/authoring/2003/5" xmlns:xlink="http://www.w3.org/1999/xlink">
<introduction>
<para>This sample deserializes JSON using dependency injection.</para>
</introduction>
<section>
<title>Sample</title>
<content>
<code lang="cs" source="..\Src\Newtonsoft.Json.Tests\Documentation\Samples\Serializer\DeserializeWithDependencyInjection.cs" region="Usage" title="Usage" />
</content>
</section>
</developerConceptualDocument>
</topic>
@@ -0,0 +1,15 @@
<?xml version="1.0" encoding="utf-8"?>
<topic id="SerializeDateFormatString" revisionNumber="1">
<developerConceptualDocument xmlns="http://ddue.schemas.microsoft.com/authoring/2003/5" xmlns:xlink="http://www.w3.org/1999/xlink">
<introduction>
<para>This sample uses the DateFormatString
setting to control how <codeEntityReference>T:System.DateTime</codeEntityReference> and <codeEntityReference>T:System.DateTimeOffset</codeEntityReference> are serialized.</para>
</introduction>
<section>
<title>Sample</title>
<content>
<code lang="cs" source="..\Src\Newtonsoft.Json.Tests\Documentation\Samples\Serializer\SerializeDateFormatString.cs" region="Usage" title="Usage" />
</content>
</section>
</developerConceptualDocument>
</topic>
@@ -0,0 +1,14 @@
<?xml version="1.0" encoding="utf-8"?>
<topic id="SerializeExtensionData" revisionNumber="1">
<developerConceptualDocument xmlns="http://ddue.schemas.microsoft.com/authoring/2003/5" xmlns:xlink="http://www.w3.org/1999/xlink">
<introduction>
<para>This sample serializes an object with extension data into JSON.</para>
</introduction>
<section>
<title>Sample</title>
<content>
<code lang="cs" source="..\Src\Newtonsoft.Json.Tests\Documentation\Samples\Serializer\SerializeExtensionData.cs" region="Usage" title="Usage" />
</content>
</section>
</developerConceptualDocument>
</topic>
@@ -0,0 +1,14 @@
<?xml version="1.0" encoding="utf-8"?>
<topic id="SerializeImmutableCollections" revisionNumber="1">
<developerConceptualDocument xmlns="http://ddue.schemas.microsoft.com/authoring/2003/5" xmlns:xlink="http://www.w3.org/1999/xlink">
<introduction>
<para>This sample serializes an immutable collection into JSON.</para>
</introduction>
<section>
<title>Sample</title>
<content>
<code lang="cs" source="..\Src\Newtonsoft.Json.Tests\Documentation\Samples\Serializer\SerializeImmutableCollections.cs" region="Usage" title="Usage" />
</content>
</section>
</developerConceptualDocument>
</topic>
+17 -5
View File
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<Topics>
<Topic id="Introduction" visible="True" isDefault="true" />
<Topic id="SerializingJSON" visible="True" isExpanded="true" title="Serializing and Deserializing JSON">
<Topic id="SerializingJSON" visible="True" title="Serializing and Deserializing JSON">
<Topic id="SerializationSettings" visible="True" title="Serialization Settings" />
<Topic id="SerializationGuide" visible="True" title="Serialization Guide" />
<Topic id="SerializationAttributes" visible="True" title="Serialization Attributes" />
@@ -12,7 +12,7 @@
<Topic id="SerializingCollections" visible="True" title="Serializing Collections" />
<Topic id="DatesInJSON" visible="True" title="Serializing Dates in JSON" />
<Topic id="ReducingSerializedJSONSize" visible="True" title="Reducing Serialized JSON Size" />
<Topic id="SerializingJSONFragments" visible="True" isSelected="true" title="Deserializing Partial JSON Fragments" />
<Topic id="SerializingJSONFragments" visible="True" title="Deserializing Partial JSON Fragments" />
<Topic id="ConditionalProperties" visible="True" title="Conditional Property Serialization" />
<Topic id="ContractResolver" visible="True" title="Serialization using ContractResolver" />
<Topic id="SerializationTracing" visible="True" title="Debugging with Serialization Tracing" />
@@ -29,8 +29,8 @@
<Topic id="ConvertingJSONandXML" visible="True" title="Converting between JSON and XML" />
<Topic id="JsonNetVsDotNetSerializers" visible="True" title="Json.NET vs .NET Serializers" />
<Topic id="JsonNetVsWindowsDataJson" visible="True" title="Json.NET vs Windows.Data.Json" />
<Topic id="Samples" visible="True" title="Samples">
<Topic id="d6e185d5-c992-44fc-8d8f-d9acc2bbec2f" visible="True" noFile="true" title="Serializing JSON">
<Topic id="Samples" visible="True" isExpanded="true" title="Samples">
<Topic id="d6e185d5-c992-44fc-8d8f-d9acc2bbec2f" visible="True" noFile="true" isExpanded="true" title="Serializing JSON">
<Topic id="SerializeObject" visible="True" title="Serialize an Object" />
<Topic id="SerializeCollection" visible="True" title="Serialize a Collection" />
<Topic id="SerializeDictionary" visible="True" title="Serialize a Dictionary" />
@@ -58,6 +58,7 @@
<Topic id="SerializeDateFormatHandling" visible="True" title="DateFormatHandling setting" />
<Topic id="SerializeDateTimeZoneHandling" visible="True" title="DateTimeZoneHandling setting" />
<Topic id="SerializeTypeNameHandling" visible="True" title="TypeNameHandling setting" />
<Topic id="DeserializeMetadataPropertyHandling" visible="True" title="MetadataPropertyHandling setting" />
<Topic id="SerializeContractResolver" visible="True" title="ContractResolver setting" />
<Topic id="TraceWriter" visible="True" title="TraceWriter setting" />
<Topic id="ErrorHandlingEvent" visible="True" title="ErrorHandling setting" />
@@ -80,8 +81,16 @@
<Topic id="DefaultValueAttributeIgnore" visible="True" title="DefaultValueAttribute" />
<Topic id="SerializationCallbackAttributes" visible="True" title="Serialization Callback Attributes" />
<Topic id="DataContractAndDataMember" visible="True" title="DataContract and DataMember Attributes" />
<Topic id="DeserializeWithDependencyInjection" visible="True" title="Deserialize with dependency injection" />
<Topic id="DefaultSettings" visible="True" isSelected="true" title="Serialize with DefaultSettings" />
<Topic id="SerializeImmutableCollections" visible="True" title="Serialize an immutable collection" />
<Topic id="DeserializeImmutableCollections" visible="True" title="Deserialize an immutable collection" />
<Topic id="SerializeExtensionData" visible="True" title="Serialize ExtensionData" />
<Topic id="DeserializeExtensionData" visible="True" title="Deserialize ExtensionData" />
<Topic id="DeserializeDateFormatString" visible="True" title="Deserialize DateFormatString" />
<Topic id="SerializeDateFormatString" visible="True" title="Serialize DateFormatString" />
</Topic>
<Topic id="68b9fad2-5436-4e35-a734-9b9d751cc3e5" visible="True" noFile="true" title="LINQ to JSON">
<Topic id="68b9fad2-5436-4e35-a734-9b9d751cc3e5" visible="True" noFile="true" isExpanded="true" title="LINQ to JSON">
<Topic id="CreateJsonManually" visible="True" title="Create JSON manually" />
<Topic id="CreateJsonCollectionInitializer" visible="True" title="Create JSON using Collection Initializers" />
<Topic id="CreateJsonDeclaratively" visible="True" title="Create JSON declaratively with LINQ" />
@@ -95,11 +104,13 @@
<Topic id="DeserializeWithLinq" visible="True" title="Deserializing from JSON with LINQ" />
<Topic id="SerializeWithLinq" visible="True" title="Serializing to JSON with LINQ" />
<Topic id="ModifyJson" visible="True" title="Modifying JSON" />
<Topic id="MergeJson" visible="True" title="Merging JSON" />
<Topic id="QueryJson" visible="True" title="Querying JSON" />
<Topic id="QueryJsonDynamic" visible="True" title="Querying JSON with dynamic" />
<Topic id="QueryJsonLinq" visible="True" title="Querying JSON with LINQ" />
<Topic id="QueryJsonSelectToken" visible="True" title="Querying JSON with SelectToken" />
<Topic id="QueryJsonSelectTokenWithLinq" visible="True" title="Querying JSON with SelectToken and LINQ" />
<Topic id="QueryJsonSelectTokenJsonPath" visible="True" title="Querying JSON with JSONPath" />
<Topic id="ReadJson" visible="True" title="Read JSON from a file" />
<Topic id="WriteToJsonFile" visible="True" title="Write JSON to a file" />
<Topic id="ToObjectComplex" visible="True" title="Convert JSON to Collection" />
@@ -108,6 +119,7 @@
<Topic id="JValueCast" visible="True" title="Casting JValue" />
<Topic id="JValueValue" visible="True" title="Using JValue.Value" />
<Topic id="JObjectProperties" visible="True" title="Using JObject.Properties" />
<Topic id="JTokenAnnotation" visible="True" title="Using LINQ to JSON Annotations" />
<Topic id="DeepEquals" visible="True" title="Comparing JSON with JToken.DeepEquals" />
<Topic id="Clone" visible="True" title="Cloning JSON with JToken.DeepClone" />
<Topic id="ToString" visible="True" title="Write JSON text with JToken.ToString" />
+12
View File
@@ -100,6 +100,18 @@
</ItemGroup>
<ItemGroup>
<Content Include="icons\favicon.ico" />
<None Include="Samples\Serializer\SerializeImmutableCollections.aml" />
<None Include="Samples\Serializer\SerializeExtensionData.aml" />
<None Include="Samples\Serializer\SerializeDateFormatString.aml" />
<None Include="Samples\Serializer\DeserializeWithDependencyInjection.aml" />
<None Include="Samples\Serializer\DeserializeMetadataPropertyHandling.aml" />
<None Include="Samples\Serializer\DeserializeImmutableCollections.aml" />
<None Include="Samples\Serializer\DeserializeExtensionData.aml" />
<None Include="Samples\Serializer\DeserializeDateFormatString.aml" />
<None Include="Samples\Serializer\DefaultSettings.aml" />
<None Include="Samples\Linq\QueryJsonSelectTokenJsonPath.aml" />
<None Include="Samples\Linq\MergeJson.aml" />
<None Include="Samples\Linq\JTokenAnnotation.aml" />
<None Include="Samples\Json\CustomJsonWriter.aml" />
<None Include="Samples\Json\CustomJsonReader.aml" />
<None Include="Samples\Xml\ConvertXmlToJsonForceArray.aml" />