From b029ad7607c2426e1166e438f6267e184b5c4de3 Mon Sep 17 00:00:00 2001 From: "MSDN.WhiteKnight" <35516665+MSDN-WhiteKnight@users.noreply.github.com> Date: Sat, 7 May 2022 21:04:36 +0500 Subject: [PATCH 01/11] Update project --- src/libraries/System.Text.Json/src/System.Text.Json.csproj | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/libraries/System.Text.Json/src/System.Text.Json.csproj b/src/libraries/System.Text.Json/src/System.Text.Json.csproj index b3bf13f32cd63..43d65bad87c08 100644 --- a/src/libraries/System.Text.Json/src/System.Text.Json.csproj +++ b/src/libraries/System.Text.Json/src/System.Text.Json.csproj @@ -22,6 +22,7 @@ System.Text.Json.Nodes.JsonNode System.Text.Json.Nodes.JsonArray System.Text.Json.Nodes.JsonObject System.Text.Json.Nodes.JsonValue + readme.md @@ -319,6 +320,7 @@ System.Text.Json.Nodes.JsonValue + From 20538fca73e3749716daf3bac67b5a9b6079aa7a Mon Sep 17 00:00:00 2001 From: "MSDN.WhiteKnight" <35516665+MSDN-WhiteKnight@users.noreply.github.com> Date: Sat, 7 May 2022 21:07:07 +0500 Subject: [PATCH 02/11] Create readme.md --- src/libraries/System.Text.Json/src/readme.md | 54 ++++++++++++++++++++ 1 file changed, 54 insertions(+) create mode 100644 src/libraries/System.Text.Json/src/readme.md diff --git a/src/libraries/System.Text.Json/src/readme.md b/src/libraries/System.Text.Json/src/readme.md new file mode 100644 index 0000000000000..71a739c513028 --- /dev/null +++ b/src/libraries/System.Text.Json/src/readme.md @@ -0,0 +1,54 @@ +## About + +Provides high-performance and low-allocating types that serialize objects to JavaScript Object Notation (JSON) text and deserialize JSON text to objects, with UTF-8 support built-in. Also provides types to read and write JSON text encoded as UTF-8, and to create an in-memory document object model (DOM), that is read-only, for random access of the JSON elements within a structured view of the data. + +The `System.Text.Json` library is built-in as part of the shared framework for .NET Core 3.0+ and .NET 5+. You only need to install it as a package for earlier .NET Core versions or other target frameworks. + +For more informations, see [JSON serialization and deserialization in .NET](https://docs.microsoft.com/dotnet/standard/serialization/system-text-json-overview). + +## Example + +The following example shows how to serialize and deserialize JSON. + +``` +using System; +using System.Text.Json; + +class Person +{ + public string Name { get; set; } + public string Surname { get; set; } + public DateTime BirthDate { get; set; } +} + +class Program +{ + static void Main() + { + var person = new Person(); + person.Name = "John"; + person.Surname = "Smith"; + person.BirthDate = new DateTime(1988, 4, 20); + + // Serialize object to JSON: + string jsonString = JsonSerializer.Serialize(person); + Console.WriteLine(jsonString); + // Output: + // {"Name":"John","Surname":"Smith","BirthDate":"1988-04-20T00:00:00"} + + // Deserialize object from JSON: + Person personDeserialized = JsonSerializer.Deserialize(jsonString); + Console.WriteLine($"Name: {personDeserialized.Name}"); + Console.WriteLine($"Surname: {personDeserialized.Surname}"); + Console.WriteLine($"BirthDate: {personDeserialized.BirthDate}"); + } +} +``` + +## Commonly Used Types + +- [System.Text.Json.JsonSerializer](https://docs.microsoft.com/dotnet/api/system.text.json.jsonserializer) +- [System.Text.Json.JsonDocument](https://docs.microsoft.com/dotnet/api/system.text.json.jsondocument) +- [System.Text.Json.JsonElement](https://docs.microsoft.com/dotnet/api/system.text.json.jsonelement) +- [System.Text.Json.Utf8JsonWriter](https://docs.microsoft.com/dotnet/api/system.text.json.utf8jsonwriter) +- [System.Text.Json.Utf8JsonReader](https://docs.microsoft.com/dotnet/api/system.text.json.utf8jsonreader) From 0eefc1cc498a0db68f96883b9b2565bcdb8be192 Mon Sep 17 00:00:00 2001 From: "MSDN.WhiteKnight" <35516665+MSDN-WhiteKnight@users.noreply.github.com> Date: Sat, 7 May 2022 21:11:27 +0500 Subject: [PATCH 03/11] Fix typo --- src/libraries/System.Text.Json/src/readme.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/libraries/System.Text.Json/src/readme.md b/src/libraries/System.Text.Json/src/readme.md index 71a739c513028..eacb914df4ea0 100644 --- a/src/libraries/System.Text.Json/src/readme.md +++ b/src/libraries/System.Text.Json/src/readme.md @@ -4,7 +4,7 @@ Provides high-performance and low-allocating types that serialize objects to Jav The `System.Text.Json` library is built-in as part of the shared framework for .NET Core 3.0+ and .NET 5+. You only need to install it as a package for earlier .NET Core versions or other target frameworks. -For more informations, see [JSON serialization and deserialization in .NET](https://docs.microsoft.com/dotnet/standard/serialization/system-text-json-overview). +For more information, see [JSON serialization and deserialization in .NET](https://docs.microsoft.com/dotnet/standard/serialization/system-text-json-overview). ## Example From 145c3901227fe04e18cf90e15121b5ee5f5a0799 Mon Sep 17 00:00:00 2001 From: "MSDN.WhiteKnight" <35516665+MSDN-WhiteKnight@users.noreply.github.com> Date: Wed, 8 Jun 2022 16:36:03 +0500 Subject: [PATCH 04/11] Update src/libraries/System.Text.Json/src/readme.md Co-authored-by: Eirik Tsarpalis --- src/libraries/System.Text.Json/src/readme.md | 47 -------------------- 1 file changed, 47 deletions(-) diff --git a/src/libraries/System.Text.Json/src/readme.md b/src/libraries/System.Text.Json/src/readme.md index eacb914df4ea0..27bc438fddcf8 100644 --- a/src/libraries/System.Text.Json/src/readme.md +++ b/src/libraries/System.Text.Json/src/readme.md @@ -5,50 +5,3 @@ Provides high-performance and low-allocating types that serialize objects to Jav The `System.Text.Json` library is built-in as part of the shared framework for .NET Core 3.0+ and .NET 5+. You only need to install it as a package for earlier .NET Core versions or other target frameworks. For more information, see [JSON serialization and deserialization in .NET](https://docs.microsoft.com/dotnet/standard/serialization/system-text-json-overview). - -## Example - -The following example shows how to serialize and deserialize JSON. - -``` -using System; -using System.Text.Json; - -class Person -{ - public string Name { get; set; } - public string Surname { get; set; } - public DateTime BirthDate { get; set; } -} - -class Program -{ - static void Main() - { - var person = new Person(); - person.Name = "John"; - person.Surname = "Smith"; - person.BirthDate = new DateTime(1988, 4, 20); - - // Serialize object to JSON: - string jsonString = JsonSerializer.Serialize(person); - Console.WriteLine(jsonString); - // Output: - // {"Name":"John","Surname":"Smith","BirthDate":"1988-04-20T00:00:00"} - - // Deserialize object from JSON: - Person personDeserialized = JsonSerializer.Deserialize(jsonString); - Console.WriteLine($"Name: {personDeserialized.Name}"); - Console.WriteLine($"Surname: {personDeserialized.Surname}"); - Console.WriteLine($"BirthDate: {personDeserialized.BirthDate}"); - } -} -``` - -## Commonly Used Types - -- [System.Text.Json.JsonSerializer](https://docs.microsoft.com/dotnet/api/system.text.json.jsonserializer) -- [System.Text.Json.JsonDocument](https://docs.microsoft.com/dotnet/api/system.text.json.jsondocument) -- [System.Text.Json.JsonElement](https://docs.microsoft.com/dotnet/api/system.text.json.jsonelement) -- [System.Text.Json.Utf8JsonWriter](https://docs.microsoft.com/dotnet/api/system.text.json.utf8jsonwriter) -- [System.Text.Json.Utf8JsonReader](https://docs.microsoft.com/dotnet/api/system.text.json.utf8jsonreader) From 9557ea431edc6478dc6e4b38f28156bd9800cac1 Mon Sep 17 00:00:00 2001 From: "MSDN.WhiteKnight" <35516665+MSDN-WhiteKnight@users.noreply.github.com> Date: Wed, 8 Jun 2022 21:03:11 +0500 Subject: [PATCH 05/11] Delete readme.md --- src/libraries/System.Text.Json/src/readme.md | 7 ------- 1 file changed, 7 deletions(-) delete mode 100644 src/libraries/System.Text.Json/src/readme.md diff --git a/src/libraries/System.Text.Json/src/readme.md b/src/libraries/System.Text.Json/src/readme.md deleted file mode 100644 index 27bc438fddcf8..0000000000000 --- a/src/libraries/System.Text.Json/src/readme.md +++ /dev/null @@ -1,7 +0,0 @@ -## About - -Provides high-performance and low-allocating types that serialize objects to JavaScript Object Notation (JSON) text and deserialize JSON text to objects, with UTF-8 support built-in. Also provides types to read and write JSON text encoded as UTF-8, and to create an in-memory document object model (DOM), that is read-only, for random access of the JSON elements within a structured view of the data. - -The `System.Text.Json` library is built-in as part of the shared framework for .NET Core 3.0+ and .NET 5+. You only need to install it as a package for earlier .NET Core versions or other target frameworks. - -For more information, see [JSON serialization and deserialization in .NET](https://docs.microsoft.com/dotnet/standard/serialization/system-text-json-overview). From d89438ee487c750c97a6740b31109d6705fca309 Mon Sep 17 00:00:00 2001 From: "MSDN.WhiteKnight" <35516665+MSDN-WhiteKnight@users.noreply.github.com> Date: Wed, 8 Jun 2022 21:04:23 +0500 Subject: [PATCH 06/11] Rename readme file --- src/libraries/System.Text.Json/src/README.md | 7 +++++++ src/libraries/System.Text.Json/src/System.Text.Json.csproj | 4 ++-- 2 files changed, 9 insertions(+), 2 deletions(-) create mode 100644 src/libraries/System.Text.Json/src/README.md diff --git a/src/libraries/System.Text.Json/src/README.md b/src/libraries/System.Text.Json/src/README.md new file mode 100644 index 0000000000000..27bc438fddcf8 --- /dev/null +++ b/src/libraries/System.Text.Json/src/README.md @@ -0,0 +1,7 @@ +## About + +Provides high-performance and low-allocating types that serialize objects to JavaScript Object Notation (JSON) text and deserialize JSON text to objects, with UTF-8 support built-in. Also provides types to read and write JSON text encoded as UTF-8, and to create an in-memory document object model (DOM), that is read-only, for random access of the JSON elements within a structured view of the data. + +The `System.Text.Json` library is built-in as part of the shared framework for .NET Core 3.0+ and .NET 5+. You only need to install it as a package for earlier .NET Core versions or other target frameworks. + +For more information, see [JSON serialization and deserialization in .NET](https://docs.microsoft.com/dotnet/standard/serialization/system-text-json-overview). diff --git a/src/libraries/System.Text.Json/src/System.Text.Json.csproj b/src/libraries/System.Text.Json/src/System.Text.Json.csproj index 43d65bad87c08..2d8dec0d58cde 100644 --- a/src/libraries/System.Text.Json/src/System.Text.Json.csproj +++ b/src/libraries/System.Text.Json/src/System.Text.Json.csproj @@ -22,7 +22,7 @@ System.Text.Json.Nodes.JsonNode System.Text.Json.Nodes.JsonArray System.Text.Json.Nodes.JsonObject System.Text.Json.Nodes.JsonValue - readme.md + README.md @@ -320,7 +320,7 @@ System.Text.Json.Nodes.JsonValue - + From f1740d61ad0660de30ca1077b9c4e34307f80979 Mon Sep 17 00:00:00 2001 From: "MSDN.WhiteKnight" <35516665+MSDN-WhiteKnight@users.noreply.github.com> Date: Wed, 8 Jun 2022 21:12:27 +0500 Subject: [PATCH 07/11] Add more docs links --- src/libraries/System.Text.Json/src/README.md | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/libraries/System.Text.Json/src/README.md b/src/libraries/System.Text.Json/src/README.md index 27bc438fddcf8..6429dc5af7c0e 100644 --- a/src/libraries/System.Text.Json/src/README.md +++ b/src/libraries/System.Text.Json/src/README.md @@ -4,4 +4,8 @@ Provides high-performance and low-allocating types that serialize objects to Jav The `System.Text.Json` library is built-in as part of the shared framework for .NET Core 3.0+ and .NET 5+. You only need to install it as a package for earlier .NET Core versions or other target frameworks. -For more information, see [JSON serialization and deserialization in .NET](https://docs.microsoft.com/dotnet/standard/serialization/system-text-json-overview). +For more information, see the documentation: + +- [JSON serialization and deserialization in .NET](https://docs.microsoft.com/dotnet/standard/serialization/system-text-json-overview) +- [How to serialize and deserialize JSON in .NET](https://docs.microsoft.com/dotnet/standard/serialization/system-text-json-how-to) +- [System.Text.Json API reference](https://docs.microsoft.com/en-us/dotnet/api/system.text.json?view=net-6.0) From 490d846d1ebbccf91610b4819a82e4655908b168 Mon Sep 17 00:00:00 2001 From: "MSDN.WhiteKnight" <35516665+MSDN-WhiteKnight@users.noreply.github.com> Date: Wed, 8 Jun 2022 21:14:17 +0500 Subject: [PATCH 08/11] Fix link --- src/libraries/System.Text.Json/src/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/libraries/System.Text.Json/src/README.md b/src/libraries/System.Text.Json/src/README.md index 6429dc5af7c0e..118a46ac14ed9 100644 --- a/src/libraries/System.Text.Json/src/README.md +++ b/src/libraries/System.Text.Json/src/README.md @@ -8,4 +8,4 @@ For more information, see the documentation: - [JSON serialization and deserialization in .NET](https://docs.microsoft.com/dotnet/standard/serialization/system-text-json-overview) - [How to serialize and deserialize JSON in .NET](https://docs.microsoft.com/dotnet/standard/serialization/system-text-json-how-to) -- [System.Text.Json API reference](https://docs.microsoft.com/en-us/dotnet/api/system.text.json?view=net-6.0) +- [System.Text.Json API reference](https://docs.microsoft.com/dotnet/api/system.text.json) From 9229991c2061bd674a1c740deec4e28a8bf20d22 Mon Sep 17 00:00:00 2001 From: "MSDN.WhiteKnight" <35516665+MSDN-WhiteKnight@users.noreply.github.com> Date: Thu, 9 Jun 2022 10:36:46 +0500 Subject: [PATCH 09/11] Update PackageDescription --- .../System.Text.Json/src/System.Text.Json.csproj | 11 +---------- 1 file changed, 1 insertion(+), 10 deletions(-) diff --git a/src/libraries/System.Text.Json/src/System.Text.Json.csproj b/src/libraries/System.Text.Json/src/System.Text.Json.csproj index 2d8dec0d58cde..b2b47b3d3f299 100644 --- a/src/libraries/System.Text.Json/src/System.Text.Json.csproj +++ b/src/libraries/System.Text.Json/src/System.Text.Json.csproj @@ -12,16 +12,7 @@ true Provides high-performance and low-allocating types that serialize objects to JavaScript Object Notation (JSON) text and deserialize JSON text to objects, with UTF-8 support built-in. Also provides types to read and write JSON text encoded as UTF-8, and to create an in-memory document object model (DOM), that is read-only, for random access of the JSON elements within a structured view of the data. -Commonly Used Types: -System.Text.Json.JsonSerializer -System.Text.Json.JsonDocument -System.Text.Json.JsonElement -System.Text.Json.Utf8JsonWriter -System.Text.Json.Utf8JsonReader -System.Text.Json.Nodes.JsonNode -System.Text.Json.Nodes.JsonArray -System.Text.Json.Nodes.JsonObject -System.Text.Json.Nodes.JsonValue +The System.Text.Json library is built-in as part of the shared framework for .NET Core 3.0+ and .NET 5+. You only need to install it as a package for earlier .NET Core versions or other target frameworks. README.md From ff1cf1f319dd630b822ed0879d7fc6300e74ef42 Mon Sep 17 00:00:00 2001 From: "MSDN.WhiteKnight" <35516665+MSDN-WhiteKnight@users.noreply.github.com> Date: Thu, 9 Jun 2022 16:36:25 +0500 Subject: [PATCH 10/11] Apply suggestions from code review Co-authored-by: Eirik Tsarpalis Co-authored-by: Viktor Hofer --- src/libraries/System.Text.Json/src/README.md | 2 +- src/libraries/System.Text.Json/src/System.Text.Json.csproj | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/libraries/System.Text.Json/src/README.md b/src/libraries/System.Text.Json/src/README.md index 118a46ac14ed9..6cbd6caffc7d3 100644 --- a/src/libraries/System.Text.Json/src/README.md +++ b/src/libraries/System.Text.Json/src/README.md @@ -2,7 +2,7 @@ Provides high-performance and low-allocating types that serialize objects to JavaScript Object Notation (JSON) text and deserialize JSON text to objects, with UTF-8 support built-in. Also provides types to read and write JSON text encoded as UTF-8, and to create an in-memory document object model (DOM), that is read-only, for random access of the JSON elements within a structured view of the data. -The `System.Text.Json` library is built-in as part of the shared framework for .NET Core 3.0+ and .NET 5+. You only need to install it as a package for earlier .NET Core versions or other target frameworks. +The `System.Text.Json` library is built-in as part of the shared framework for .NET Core 3.0+ and .NET 5+. The package can be installed when needing to access more recent versions of the library in older target frameworks. For more information, see the documentation: diff --git a/src/libraries/System.Text.Json/src/System.Text.Json.csproj b/src/libraries/System.Text.Json/src/System.Text.Json.csproj index b2b47b3d3f299..525639ce186a5 100644 --- a/src/libraries/System.Text.Json/src/System.Text.Json.csproj +++ b/src/libraries/System.Text.Json/src/System.Text.Json.csproj @@ -12,7 +12,7 @@ true Provides high-performance and low-allocating types that serialize objects to JavaScript Object Notation (JSON) text and deserialize JSON text to objects, with UTF-8 support built-in. Also provides types to read and write JSON text encoded as UTF-8, and to create an in-memory document object model (DOM), that is read-only, for random access of the JSON elements within a structured view of the data. -The System.Text.Json library is built-in as part of the shared framework for .NET Core 3.0+ and .NET 5+. You only need to install it as a package for earlier .NET Core versions or other target frameworks. +The System.Text.Json library is built-in as part of the shared framework for .NET Core 3.0+ and .NET 5+. The package can be installed when needing to access more recent versions of the library in older target frameworks. README.md From 4b741e2d628f600382dea4ed3c0f12db9a1adac4 Mon Sep 17 00:00:00 2001 From: "MSDN.WhiteKnight" <35516665+MSDN-WhiteKnight@users.noreply.github.com> Date: Thu, 9 Jun 2022 23:37:17 +0500 Subject: [PATCH 11/11] Remove mentions of exact target framework versions --- src/libraries/System.Text.Json/src/README.md | 2 +- src/libraries/System.Text.Json/src/System.Text.Json.csproj | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/libraries/System.Text.Json/src/README.md b/src/libraries/System.Text.Json/src/README.md index 6cbd6caffc7d3..892946041791c 100644 --- a/src/libraries/System.Text.Json/src/README.md +++ b/src/libraries/System.Text.Json/src/README.md @@ -2,7 +2,7 @@ Provides high-performance and low-allocating types that serialize objects to JavaScript Object Notation (JSON) text and deserialize JSON text to objects, with UTF-8 support built-in. Also provides types to read and write JSON text encoded as UTF-8, and to create an in-memory document object model (DOM), that is read-only, for random access of the JSON elements within a structured view of the data. -The `System.Text.Json` library is built-in as part of the shared framework for .NET Core 3.0+ and .NET 5+. The package can be installed when needing to access more recent versions of the library in older target frameworks. +The `System.Text.Json` library is built-in as part of the shared framework in .NET Runtime. The package can be installed when you need to use it in other target frameworks. For more information, see the documentation: diff --git a/src/libraries/System.Text.Json/src/System.Text.Json.csproj b/src/libraries/System.Text.Json/src/System.Text.Json.csproj index 525639ce186a5..4c77b86f392cd 100644 --- a/src/libraries/System.Text.Json/src/System.Text.Json.csproj +++ b/src/libraries/System.Text.Json/src/System.Text.Json.csproj @@ -12,7 +12,7 @@ true Provides high-performance and low-allocating types that serialize objects to JavaScript Object Notation (JSON) text and deserialize JSON text to objects, with UTF-8 support built-in. Also provides types to read and write JSON text encoded as UTF-8, and to create an in-memory document object model (DOM), that is read-only, for random access of the JSON elements within a structured view of the data. -The System.Text.Json library is built-in as part of the shared framework for .NET Core 3.0+ and .NET 5+. The package can be installed when needing to access more recent versions of the library in older target frameworks. +The System.Text.Json library is built-in as part of the shared framework in .NET Runtime. The package can be installed when you need to use it in other target frameworks. README.md