Microsoft.AspNetCore.JsonPatch 10.0.9

About

Microsoft.AspNetCore.JsonPatch provides ASP.NET Core support for JSON PATCH requests.

How to Use

To use Microsoft.AspNetCore.JsonPatch, follow these steps:

Installation

dotnet add package Microsoft.AspNetCore.JsonPatch
dotnet add package Microsoft.AspNetCore.Mvc.NewtonsoftJson

Configuration

To enable JSON Patch support, call AddNewtonsoftJson in your ASP.NET Core app's Program.cs:

var builder = WebApplication.CreateBuilder(args);

builder.Services.AddControllers()
    .AddNewtonsoftJson();

Configure when using System.Text.Json

To add support for JSON Patch using Newtonsoft.Json while continuing to use System.Text.Json for other input and output formatters:

  1. Update your Program.cs with logic to construct a NewtonsoftJsonPatchInputFormatter:
    static NewtonsoftJsonPatchInputFormatter GetJsonPatchInputFormatter()
    {
        var builder = new ServiceCollection()
            .AddLogging()
            .AddMvc()
            .AddNewtonsoftJson()
            .Services.BuildServiceProvider();
    
        return builder
            .GetRequiredService<IOptions<MvcOptions>>()
            .Value
            .InputFormatters
            .OfType<NewtonsoftJsonPatchInputFormatter>()
            .First();
    }
    
  2. Configure the input formatter:
    var builder = WebApplication.CreateBuilder(args);
    
    builder.Services.AddControllers(options =>
    {
        options.InputFormatters.Insert(0, GetJsonPatchInputFormatter());
    });
    

Usage

To define an action method for a JSON Patch in an API controller:

  1. Annotate it with the HttpPatch attribute
  2. Accept a JsonPatchDocument<TModel>
  3. Call ApplyTo on the patch document to apply changes

For example:

[HttpPatch]
public IActionResult JsonPatchWithModelState(
    [FromBody] JsonPatchDocument<Customer> patchDoc)
{
    if (patchDoc is not null)
    {
        var customer = CreateCustomer();

        patchDoc.ApplyTo(customer, ModelState);

        if (!ModelState.IsValid)
        {
            return BadRequest(ModelState);
        }

        return new ObjectResult(customer);
    }
    else
    {
        return BadRequest(ModelState);
    }
}

In a real app, the code would retrieve the data from a store such as a database and update the database after applying the patch.

Additional Documentation

For additional documentation and examples, refer to the official documentation on JSON Patch in ASP.NET Core.

Feedback & Contributing

Microsoft.AspNetCore.JsonPatch is released as open-source under the MIT license. Bug reports and contributions are welcome at the GitHub repository.

Showing the top 20 packages that depend on Microsoft.AspNetCore.JsonPatch.

Packages Downloads
Microsoft.AspNetCore.Mvc.NewtonsoftJson
ASP.NET Core MVC features that use Newtonsoft.Json. Includes input and output formatters for JSON and JSON PATCH. This package was built from the source code at https://github.com/aspnet/AspNetCore/tree/0c26925a185ba2996051c0f37a995ef0a682cf54
154
Microsoft.AspNetCore.Mvc.NewtonsoftJson
ASP.NET Core MVC features that use Newtonsoft.Json. Includes input and output formatters for JSON and JSON PATCH. This package was built from the source code at https://github.com/aspnet/AspNetCore/tree/4a42afc5aea63750638e118560d43db04bd9ccc2
153
Microsoft.AspNetCore.Mvc.NewtonsoftJson
ASP.NET Core MVC features that use Newtonsoft.Json. Includes input and output formatters for JSON and JSON PATCH. This package was built from the source code at https://github.com/aspnet/AspNetCore/tree/80fec4e3edea3972e95885f5c0db6ee06072f917
156
Microsoft.AspNetCore.Mvc.NewtonsoftJson
ASP.NET Core MVC features that use Newtonsoft.Json. Includes input and output formatters for JSON and JSON PATCH. This package was built from the source code at https://github.com/aspnet/AspNetCore/tree/e276c8174b8bfdeb70efceafa81c75f8badbc8db
156
Microsoft.AspNetCore.Mvc.NewtonsoftJson
ASP.NET Core MVC features that use Newtonsoft.Json. Includes input and output formatters for JSON and JSON PATCH. This package was built from the source code at https://github.com/dotnet/aspnetcore/tree/215a587e52efa710de84138b0a3374b860b924d8
322
Microsoft.AspNetCore.Mvc.NewtonsoftJson
ASP.NET Core MVC features that use Newtonsoft.Json. Includes input and output formatters for JSON and JSON PATCH. This package was built from the source code at https://github.com/dotnet/aspnetcore/tree/25bd01f17d5f01fc78bea5eb5308b2c0d79e2889
155
Microsoft.AspNetCore.Mvc.NewtonsoftJson
ASP.NET Core MVC features that use Newtonsoft.Json. Includes input and output formatters for JSON and JSON PATCH. This package was built from the source code at https://github.com/dotnet/aspnetcore/tree/2f1db20456007c9515068a35a65afdf99af70bc6
165
Microsoft.AspNetCore.Mvc.NewtonsoftJson
ASP.NET Core MVC features that use Newtonsoft.Json. Includes input and output formatters for JSON and JSON PATCH. This package was built from the source code at https://github.com/dotnet/aspnetcore/tree/704f7cb1d2cea33afb00c2097731216f121c2c73
247
Microsoft.AspNetCore.Mvc.NewtonsoftJson
ASP.NET Core MVC features that use Newtonsoft.Json. Includes input and output formatters for JSON and JSON PATCH. This package was built from the source code at https://github.com/dotnet/aspnetcore/tree/8e941eb42f819adb116b881195158b3887a70a1c
211
Microsoft.AspNetCore.Mvc.NewtonsoftJson
ASP.NET Core MVC features that use Newtonsoft.Json. Includes input and output formatters for JSON and JSON PATCH. This package was built from the source code at https://github.com/dotnet/aspnetcore/tree/954f61dd38b33caa2b736c73530bd5a294174437
308
Microsoft.AspNetCore.Mvc.NewtonsoftJson
ASP.NET Core MVC features that use Newtonsoft.Json. Includes input and output formatters for JSON and JSON PATCH. This package was built from the source code at https://github.com/dotnet/aspnetcore/tree/ae2eabad0e49302d0632a7dde917fdc68d960dc4
155
Microsoft.AspNetCore.Mvc.NewtonsoftJson
ASP.NET Core MVC features that use Newtonsoft.Json. Includes input and output formatters for JSON and JSON PATCH. This package was built from the source code at https://github.com/dotnet/aspnetcore/tree/b8139c5ee58f1708b0e3368a1b241400edd6cbc4
182
Microsoft.AspNetCore.Mvc.NewtonsoftJson
ASP.NET Core MVC features that use Newtonsoft.Json. Includes input and output formatters for JSON and JSON PATCH. This package was built from the source code at https://github.com/dotnet/aspnetcore/tree/b96167fbfe8bd45d94e4dcda42c7d09eb5745459
292
Microsoft.AspNetCore.Mvc.NewtonsoftJson
ASP.NET Core MVC features that use Newtonsoft.Json. Includes input and output formatters for JSON and JSON PATCH. This package was built from the source code at https://github.com/dotnet/aspnetcore/tree/c2a442982e736e17ae6bcadbfd8ccba278ee1be6
385
Microsoft.AspNetCore.Mvc.NewtonsoftJson
ASP.NET Core MVC features that use Newtonsoft.Json. Includes input and output formatters for JSON and JSON PATCH. This package was built from the source code at https://github.com/dotnet/aspnetcore/tree/c911002ab43b7b989ed67090f2a48d9073d5118d
159
Microsoft.AspNetCore.Mvc.NewtonsoftJson
ASP.NET Core MVC features that use Newtonsoft.Json. Includes input and output formatters for JSON and JSON PATCH. This package was built from the source code at https://github.com/dotnet/aspnetcore/tree/da7e9894ce22ef8cc02e5acc56e95a6f8cf8f644
207
Microsoft.AspNetCore.Mvc.NewtonsoftJson
ASP.NET Core MVC features that use Newtonsoft.Json. Includes input and output formatters for JSON and JSON PATCH. This package was built from the source code at https://github.com/dotnet/aspnetcore/tree/e77cb01b5529c137130757859f09f892dbdd2436
164
Microsoft.AspNetCore.Mvc.NewtonsoftJson
ASP.NET Core MVC features that use Newtonsoft.Json. Includes input and output formatters for JSON and JSON PATCH. This package was built from the source code at https://github.com/dotnet/aspnetcore/tree/f9ae0f5d30be2de3c0de61b5673bd8873231d70a
158
Microsoft.AspNetCore.Mvc.NewtonsoftJson
ASP.NET Core MVC features that use Newtonsoft.Json. Includes input and output formatters for JSON and JSON PATCH. This package was built from the source code at https://github.com/dotnet/aspnetcore/tree/febee99db845fd8766a13bdb391a07c3ee90b4ba
191
Microsoft.AspNetCore.Mvc.NewtonsoftJson
ASP.NET Core MVC features that use Newtonsoft.Json. Includes input and output formatters for JSON and JSON PATCH. This package was built from the source code at https://github.com/dotnet/dotnet/tree/b0f34d51fccc69fd334253924abd8d6853fad7aa
161

.NET Framework 4.6.2

.NET 10.0

.NET Standard 2.0

Version Downloads Last updated
11.0.0-preview.5.26302.115 5 06/09/2026
11.0.0-preview.4.26230.115 10 05/13/2026
11.0.0-preview.3.26207.106 23 04/14/2026
11.0.0-preview.2.26159.112 30 03/12/2026
11.0.0-preview.1.26104.118 30 02/11/2026
10.0.9 6 06/09/2026
10.0.8 14 05/13/2026
10.0.7 23 04/21/2026
10.0.6 23 04/14/2026
10.0.5 26 03/13/2026
10.0.4 25 03/11/2026
10.0.3 30 02/11/2026
10.0.2 91 01/13/2026
10.0.1 74 12/10/2025
10.0.0 126 11/13/2025
10.0.0-rc.2.25502.107 93 10/15/2025
10.0.0-rc.1.25451.107 96 09/09/2025
10.0.0-preview.7.25380.108 90 08/12/2025
10.0.0-preview.6.25358.103 145 07/16/2025
10.0.0-preview.5.25277.114 125 06/08/2025
10.0.0-preview.4.25258.110 127 05/13/2025
10.0.0-preview.3.25172.1 112 04/13/2025
10.0.0-preview.2.25164.1 107 03/31/2025
10.0.0-preview.1.25120.3 103 04/01/2025
9.0.17 6 06/09/2026
9.0.16 9 05/13/2026
9.0.15 18 04/14/2026
9.0.14 19 03/12/2026
9.0.13 28 02/11/2026
9.0.12 35 01/13/2026
9.0.11 72 11/13/2025
9.0.10 62 10/15/2025
9.0.9 93 09/09/2025
9.0.8 199 08/07/2025
9.0.7 97 07/09/2025
9.0.6 88 06/13/2025
9.0.5 107 05/14/2025
9.0.4 122 04/09/2025
9.0.3 213 03/27/2025
9.0.2 137 02/14/2025
9.0.1 102 02/11/2025
9.0.0 156 11/14/2024
9.0.0-rc.2.24474.3 113 10/17/2024
9.0.0-rc.1.24452.1 137 10/23/2024
9.0.0-preview.7.24406.2 119 08/19/2024
9.0.0-preview.6.24328.4 130 07/20/2024
9.0.0-preview.5.24306.11 137 07/20/2024
9.0.0-preview.4.24267.6 138 07/20/2024
9.0.0-preview.3.24172.13 129 07/20/2024
9.0.0-preview.2.24128.4 136 07/20/2024
9.0.0-preview.1.24081.5 151 07/20/2024
8.0.28 5 06/09/2026
8.0.27 8 05/13/2026
8.0.26 19 04/14/2026
8.0.25 22 03/12/2026
8.0.24 24 02/11/2026
8.0.23 40 01/13/2026
8.0.22 68 11/13/2025
8.0.21 82 10/15/2025
8.0.20 81 09/09/2025
8.0.19 87 08/07/2025
8.0.18 115 07/09/2025
8.0.17 81 06/13/2025
8.0.16 103 05/14/2025
8.0.15 120 04/09/2025
8.0.14 112 03/31/2025
8.0.13 111 03/31/2025
8.0.12 126 03/31/2025
8.0.11 113 11/14/2024
8.0.10 138 10/15/2024
8.0.8 116 08/21/2024
8.0.7 145 07/20/2024
8.0.6 157 06/27/2024
8.0.5 143 07/20/2024
8.0.4 140 06/04/2024
8.0.3 159 07/20/2024
8.0.2 140 02/15/2024
8.0.1 218 02/04/2024
8.0.0 147 07/20/2024
8.0.0-rc.2.23480.2 159 07/20/2024
8.0.0-rc.1.23421.29 125 07/20/2024
8.0.0-preview.7.23375.9 124 07/20/2024
8.0.0-preview.6.23329.11 157 07/20/2024
8.0.0-preview.5.23302.2 120 07/20/2024
8.0.0-preview.4.23260.4 143 07/20/2024
8.0.0-preview.3.23177.8 150 07/20/2024
8.0.0-preview.2.23153.2 177 07/20/2024
8.0.0-preview.1.23112.2 119 07/20/2024
7.0.20 131 07/20/2024
7.0.19 123 07/20/2024
7.0.18 130 07/20/2024
7.0.17 116 07/20/2024
7.0.16 127 07/20/2024
7.0.15 140 07/20/2024
7.0.14 136 07/20/2024
7.0.13 156 07/20/2024
7.0.12 130 07/20/2024
7.0.11 148 07/20/2024
7.0.10 131 07/20/2024
7.0.9 140 07/20/2024
7.0.8 139 07/20/2024
7.0.7 139 07/20/2024
7.0.5 129 07/20/2024
7.0.4 144 07/20/2024
7.0.3 210 02/04/2024
7.0.2 121 07/20/2024
7.0.1 152 07/20/2024
7.0.0 175 02/04/2024
7.0.0-rc.2.22476.2 134 07/20/2024
7.0.0-rc.1.22427.2 147 07/20/2024
7.0.0-preview.7.22376.6 144 07/20/2024
7.0.0-preview.6.22330.3 167 07/20/2024
7.0.0-preview.5.22303.8 119 07/20/2024
7.0.0-preview.4.22251.1 147 07/20/2024
7.0.0-preview.3.22178.4 134 07/20/2024
7.0.0-preview.2.22153.2 118 07/20/2024
7.0.0-preview.1.22109.13 141 07/20/2024
6.0.36 110 11/14/2024
6.0.35 129 10/21/2024
6.0.33 126 08/21/2024
6.0.32 137 07/20/2024
6.0.31 155 07/20/2024
6.0.30 135 07/20/2024
6.0.29 131 07/20/2024
6.0.28 129 07/20/2024
6.0.27 128 07/20/2024
6.0.26 128 07/20/2024
6.0.25 115 07/20/2024
6.0.24 144 07/20/2024
6.0.23 152 07/20/2024
6.0.22 147 07/20/2024
6.0.21 131 07/20/2024
6.0.20 143 07/20/2024
6.0.19 144 07/20/2024
6.0.18 133 07/20/2024
6.0.16 140 07/20/2024
6.0.15 143 07/20/2024
6.0.14 170 07/20/2024
6.0.13 173 07/20/2024
6.0.12 125 07/20/2024
6.0.11 150 07/20/2024
6.0.10 169 07/20/2024
6.0.9 154 07/20/2024
6.0.8 147 07/20/2024
6.0.7 150 07/20/2024
6.0.6 156 07/20/2024
6.0.5 129 07/20/2024
6.0.4 132 07/20/2024
6.0.3 190 02/05/2024
6.0.2 146 07/20/2024
6.0.1 131 07/20/2024
6.0.0 133 07/20/2024
6.0.0-rc.2.21480.10 132 07/20/2024
6.0.0-rc.1.21452.15 118 07/20/2024
6.0.0-preview.7.21378.6 139 07/20/2024
6.0.0-preview.6.21355.2 125 07/20/2024
6.0.0-preview.5.21301.17 184 07/20/2024
6.0.0-preview.4.21253.5 137 07/20/2024
6.0.0-preview.3.21201.13 122 07/20/2024
6.0.0-preview.2.21154.6 132 07/20/2024
6.0.0-preview.1.21103.6 154 07/20/2024
5.0.17 150 07/20/2024
5.0.16 139 07/20/2024
5.0.15 148 07/20/2024
5.0.14 142 07/20/2024
5.0.13 148 07/20/2024
5.0.12 132 07/20/2024
5.0.11 139 07/20/2024
5.0.10 148 07/20/2024
5.0.9 145 07/20/2024
5.0.8 156 07/20/2024
5.0.7 138 07/20/2024
5.0.6 161 07/20/2024
5.0.5 132 07/20/2024
5.0.4 157 07/20/2024
5.0.3 125 07/20/2024
5.0.2 122 07/20/2024
5.0.1 146 07/20/2024
5.0.0 144 07/20/2024
5.0.0-rc.2.20475.17 131 07/20/2024
5.0.0-rc.1.20451.17 161 07/20/2024
5.0.0-preview.8.20414.8 127 07/20/2024
5.0.0-preview.7.20365.19 123 07/20/2024
5.0.0-preview.6.20312.15 140 07/20/2024
5.0.0-preview.5.20279.2 131 07/20/2024
5.0.0-preview.4.20257.10 134 07/20/2024
5.0.0-preview.3.20215.14 133 07/20/2024
5.0.0-preview.2.20167.3 131 07/20/2024
5.0.0-preview.1.20124.5 136 07/20/2024
3.1.32 132 07/20/2024
3.1.31 130 07/20/2024
3.1.30 128 07/20/2024
3.1.29 127 07/20/2024
3.1.28 154 07/20/2024
3.1.27 148 07/20/2024
3.1.26 135 07/20/2024
3.1.25 147 07/20/2024
3.1.24 154 07/20/2024
3.1.23 156 07/20/2024
3.1.22 133 07/20/2024
3.1.21 148 07/20/2024
3.1.20 148 07/20/2024
3.1.19 144 07/20/2024
3.1.18 145 07/20/2024
3.1.17 137 07/20/2024
3.1.16 149 07/20/2024
3.1.15 142 07/20/2024
3.1.14 140 07/20/2024
3.1.13 138 07/20/2024
3.1.12 137 07/20/2024
3.1.11 139 07/20/2024
3.1.10 141 07/20/2024
3.1.9 142 07/20/2024
3.1.8 145 07/20/2024
3.1.7 125 07/20/2024
3.1.6 145 07/20/2024
3.1.5 151 07/20/2024
3.1.4 127 07/20/2024
3.1.3 133 07/20/2024
3.1.2 155 07/20/2024
3.1.1 123 07/20/2024
3.1.0 133 07/20/2024
3.1.0-preview3.19555.2 146 07/20/2024
3.1.0-preview2.19528.8 136 07/20/2024
3.1.0-preview1.19508.20 128 07/20/2024
3.0.3 133 07/20/2024
3.0.2 144 07/20/2024
3.0.0 126 07/20/2024
3.0.0-rc1.19457.4 147 07/20/2024
3.0.0-preview9.19424.4 122 07/20/2024
3.0.0-preview8.19405.7 125 07/20/2024
3.0.0-preview7.19365.7 131 07/20/2024
3.0.0-preview6.19307.2 138 07/20/2024
3.0.0-preview5-19227-01 122 07/20/2024
3.0.0-preview4-19216-03 153 07/20/2024
3.0.0-preview3-19153-02 147 07/20/2024
3.0.0-preview-19075-0444 155 07/20/2024
3.0.0-preview-18579-0056 137 07/20/2024
2.3.11 5 06/09/2026
2.3.10 10 05/13/2026
2.3.9 29 01/08/2026
2.3.8 38 01/07/2026
2.3.0 107 03/31/2025
2.2.0 161 07/20/2024
2.2.0-preview3-35497 126 07/20/2024
2.2.0-preview2-35157 135 07/20/2024
2.2.0-preview1-35029 149 07/20/2024
2.1.1 124 07/20/2024
2.1.0 134 07/20/2024
2.1.0-rc1-final 130 07/20/2024
2.1.0-preview2-final 136 07/20/2024
2.1.0-preview1-final 125 07/20/2024
2.0.0 192 02/05/2024
2.0.0-preview2-final 139 07/20/2024
2.0.0-preview1-final 149 07/20/2024
1.1.2 148 07/20/2024
1.1.1 126 07/20/2024
1.1.0 131 07/20/2024
1.1.0-preview1-final 142 07/20/2024
1.0.0 132 07/20/2024
1.0.0-rc2-final 133 07/20/2024