ktsu.ToStringJsonConverter 1.0.49-pre.1

Prefix Reserved
This is a prerelease version of ktsu.ToStringJsonConverter.
There is a newer version of this package available.
See the version list below for details.
dotnet add package ktsu.ToStringJsonConverter --version 1.0.49-pre.1
                    
NuGet\Install-Package ktsu.ToStringJsonConverter -Version 1.0.49-pre.1
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="ktsu.ToStringJsonConverter" Version="1.0.49-pre.1" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="ktsu.ToStringJsonConverter" Version="1.0.49-pre.1" />
                    
Directory.Packages.props
<PackageReference Include="ktsu.ToStringJsonConverter" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add ktsu.ToStringJsonConverter --version 1.0.49-pre.1
                    
#r "nuget: ktsu.ToStringJsonConverter, 1.0.49-pre.1"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package ktsu.ToStringJsonConverter@1.0.49-pre.1
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=ktsu.ToStringJsonConverter&version=1.0.49-pre.1&prerelease
                    
Install as a Cake Addin
#tool nuget:?package=ktsu.ToStringJsonConverter&version=1.0.49-pre.1&prerelease
                    
Install as a Cake Tool

ktsu.ToStringJsonConverter

Overview

ToStringJsonConverter is a JSON converter factory that simplifies serialization and deserialization of custom types in .NET by leveraging the ToString and FromString methods.

Features

  • Automatically identifies types with a FromString method for custom serialization.
  • Converts objects to and from JSON using their string representation.
  • Supports custom types with static FromString methods.

Installation

Install via NuGet:

dotnet add package ktsu.ToStringJsonConverter

Usage

Configure the converter in your JsonSerializerOptions:

var options = new JsonSerializerOptions();
options.Converters.Add(new ToStringJsonConverterFactory());

Example

public class MyType
{
    public string Value { get; set; }
    public static MyType FromString(string value) => new() { Value = value };
    public override string ToString() => Value;
}

var myType = new MyType { Value = "example" };
string json = JsonSerializer.Serialize(myType, options); // "example"
MyType deserialized = JsonSerializer.Deserialize<MyType>(json, options);

License

This project is licensed under the MIT License. See the LICENSE file for more details.

Product Compatible and additional computed target framework versions.
.NET net8.0 is compatible.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed.  net9.0 is compatible.  net9.0-android was computed.  net9.0-browser was computed.  net9.0-ios was computed.  net9.0-maccatalyst was computed.  net9.0-macos was computed.  net9.0-tvos was computed.  net9.0-windows was computed.  net10.0 was computed.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (2)

Showing the top 2 NuGet packages that depend on ktsu.ToStringJsonConverter:

Package Downloads
ktsu.Schema

Schema

ktsu.PkmnDB

PkmnDB

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
1.2.4 291 5/21/2025 1.2.4 is deprecated because it is no longer maintained.
1.2.4-pre.17 124 5/20/2025
1.2.4-pre.15 83 5/17/2025
1.2.4-pre.14 145 5/16/2025
1.2.4-pre.13 217 5/15/2025
1.2.4-pre.12 220 5/14/2025
1.2.4-pre.11 213 5/13/2025
1.2.4-pre.10 246 5/12/2025
1.2.4-pre.9 175 5/11/2025
1.2.4-pre.8 117 5/10/2025
1.2.4-pre.7 59 5/9/2025
1.2.4-pre.6 135 5/8/2025
1.2.4-pre.5 131 5/7/2025
1.2.4-pre.4 136 5/6/2025
1.2.4-pre.3 125 5/5/2025
1.2.4-pre.2 136 5/4/2025
1.2.4-pre.1 128 5/4/2025
1.2.3 2,994 5/4/2025
1.2.3-pre.1 59 4/26/2025
1.2.2 596 4/25/2025
1.2.2-pre.1 134 4/4/2025
1.2.1 709 3/30/2025
1.2.0 392 3/30/2025
1.1.1-pre.3 90 3/29/2025
1.1.1-pre.2 472 3/25/2025
1.1.1-pre.1 86 2/18/2025
1.1.0 1,000 2/17/2025
1.0.49-pre.3 93 2/6/2025
1.0.49-pre.2 81 2/5/2025
1.0.49-pre.1 79 2/5/2025
1.0.48 2,494 12/27/2024
1.0.48-pre.30 81 2/4/2025
1.0.48-pre.29 77 2/3/2025
1.0.48-pre.28 86 2/1/2025
1.0.48-pre.27 78 1/30/2025
1.0.48-pre.26 77 1/28/2025
1.0.48-pre.25 74 1/26/2025
1.0.48-pre.24 77 1/24/2025
1.0.48-pre.23 80 1/22/2025
1.0.48-pre.22 74 1/20/2025
1.0.48-pre.21 69 1/18/2025
1.0.48-pre.20 66 1/16/2025
1.0.48-pre.19 60 1/14/2025
1.0.48-pre.18 68 1/13/2025
1.0.48-pre.17 76 1/11/2025
1.0.48-pre.16 73 1/10/2025
1.0.48-pre.15 74 1/10/2025
1.0.48-pre.14 64 1/8/2025
1.0.48-pre.13 81 1/7/2025
1.0.48-pre.12 83 1/5/2025
1.0.48-pre.11 104 1/3/2025
1.0.48-pre.10 78 1/3/2025
1.0.48-pre.9 84 1/3/2025
1.0.48-pre.8 86 1/3/2025
1.0.48-pre.7 76 1/2/2025
1.0.48-pre.6 104 12/31/2024
1.0.48-pre.5 81 12/30/2024
1.0.48-pre.4 84 12/29/2024
1.0.48-pre.3 71 12/28/2024
1.0.48-pre.2 74 12/27/2024
1.0.48-pre.1 75 12/27/2024
1.0.47-pre.1 82 12/27/2024
1.0.46 299 12/26/2024
1.0.45 116 12/26/2024
1.0.44 107 12/26/2024
1.0.43 104 12/26/2024
1.0.42 114 12/26/2024
1.0.41 129 12/26/2024
1.0.40 106 12/26/2024
1.0.39 114 12/25/2024
1.0.38 263 12/23/2024
1.0.37 270 12/23/2024
1.0.36 104 12/23/2024
1.0.35 139 12/23/2024
1.0.34 334 12/19/2024
1.0.33 254 12/16/2024
1.0.32 344 12/6/2024
1.0.31 285 12/5/2024
1.0.30 163 12/4/2024
1.0.29 264 12/2/2024
1.0.28 129 12/2/2024
1.0.27 151 12/2/2024
1.0.26 195 12/1/2024
1.0.25 194 12/1/2024
1.0.24 165 11/30/2024
1.0.23 129 11/29/2024
1.0.22 214 11/27/2024
1.0.21 189 11/26/2024
1.0.20 206 11/20/2024
1.0.19 323 11/15/2024
1.0.18 198 11/14/2024
1.0.17 182 11/13/2024
1.0.16 431 11/4/2024
1.0.15 191 11/1/2024
1.0.14 603 10/17/2024
1.0.13 410 10/7/2024
1.0.12 168 10/4/2024
1.0.11 330 9/23/2024
1.0.10 152 9/20/2024
1.0.10-pre.1 66 12/27/2024
1.0.9 175 9/19/2024
1.0.8 176 9/19/2024
1.0.7 122 9/19/2024
1.0.6 151 9/19/2024
1.0.5 133 9/18/2024
1.0.4 127 9/18/2024
1.0.3 238 9/18/2024
1.0.2 165 9/18/2024
1.0.1 234 9/14/2024
1.0.0 134 9/14/2024

## v1.0.49-pre.1 (patch)

Changes since v1.0.48:

- Add mailmap ([@matt-edmondson](https://github.com/matt-edmondson))
- Add scripts for automated metadata generation and versioning ([@matt-edmondson](https://github.com/matt-edmondson))

## v1.0.48 (patch)

Changes since v1.0.48-pre.30:

- Add mailmap ([@matt-edmondson](https://github.com/matt-edmondson))
- Add scripts for automated metadata generation and versioning ([@matt-edmondson](https://github.com/matt-edmondson))

## v1.0.47-pre.1 (patch)

Changes since v1.0.46:

- Renamed metadata files ([@matt-edmondson](https://github.com/matt-edmondson))

## v1.0.42 (patch)

Changes since v1.0.41:

- Replace LICENSE file with LICENSE.md and update copyright information ([@matt-edmondson](https://github.com/matt-edmondson))

## v1.0.40 (patch)

Changes since v1.0.39:

- Refactor test method names to camel case ([@matt-edmondson](https://github.com/matt-edmondson))
- Update LICENSE file to LICENSE.md with copyright notice ([@matt-edmondson](https://github.com/matt-edmondson))

## v1.0.35 (patch)

Changes since v1.0.34:

- Add null check in TestRoundTrip to prevent null exception ([@matt-edmondson](https://github.com/matt-edmondson))

## v1.0.26 (patch)

Changes since v1.0.25:

- Update ktsu.Extensions package reference to version 1.0.31 ([@matt-edmondson](https://github.com/matt-edmondson))

## v1.0.25 (patch)

Changes since v1.0.24:

- Rename package to ktsu.ToStringJsonConverter and update ktsu.Extensions to version 1.0.30 ([@matt-edmondson](https://github.com/matt-edmondson))

## v1.0.10-pre.1 (patch)

Changes since v1.0.9:

- Add null check in TestRoundTrip to prevent null exception ([@matt-edmondson](https://github.com/matt-edmondson))
- Refactor test method names to camel case ([@matt-edmondson](https://github.com/matt-edmondson))
- Rename package to ktsu.ToStringJsonConverter and update ktsu.Extensions to version 1.0.30 ([@matt-edmondson](https://github.com/matt-edmondson))
- Renamed metadata files ([@matt-edmondson](https://github.com/matt-edmondson))
- Replace LICENSE file with LICENSE.md and update copyright information ([@matt-edmondson](https://github.com/matt-edmondson))
- Update ktsu.Extensions package reference to version 1.0.31 ([@matt-edmondson](https://github.com/matt-edmondson))
- Update LICENSE file to LICENSE.md with copyright notice ([@matt-edmondson](https://github.com/matt-edmondson))

## v1.0.1 (patch)

Changes since v1.0.0:

- Migrate ktsu.io to ktsu namespace ([@matt-edmondson](https://github.com/matt-edmondson))

## v1.0.0 (major)

Changes since 0.0.0.0:

- 1.0.0 ([@matt-edmondson](https://github.com/matt-edmondson))
- Add documentation comments ([@matt-edmondson](https://github.com/matt-edmondson))
- Add project files. ([@matt-edmondson](https://github.com/matt-edmondson))
- Suppress specific warnings in csproj ([@matt-edmondson](https://github.com/matt-edmondson))
- Update Extensions package, and project version ([@matt-edmondson](https://github.com/matt-edmondson))