Microsoft.AspNetCore.JsonPatch 11.0.0-preview.3.26207.106

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
KubernetesClient
Client library for the Kubernetes open source container orchestrator.
29
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/67acc3d331454956fc06d6de2218a625e3e596f8
27
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/d634f2bd1ad6e319f26ff0f1d7ada5539158a19f
26
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/7c810658463f35c39c54d5fb8a8dbbfd463bf747
25
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/cec88a329584349fda070f4c7346b10538210ace
25
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/63d1187a01b82719c2891cecc74ee3d51ce892a8
24
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/d4eca39c3fc1944b2c6431bf6b22036bdb176c0d
23
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/509f6badec2f3162f0e50330cd9107e5624b379b
23
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/f5084525411d53b81d9950b68616117750b674d4
23
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/417d650029c720dbd2138bcafbb78e2e4ff31bff
23
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/fad253f51b461736dfd3cd9c15977bb7493becef
22
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
22
KubernetesClient
Client library for the Kubernetes open source container orchestrator.
22
KubernetesClient
Client library for the Kubernetes open source container orchestrator.
21
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
21
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/36be7ed6d6d56b7da0a2891e3de7ecc2aa48eecd
21
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/0621c1748eac08dd516edc950559ab7e8308f214
21
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/bb01bbf4433e27289b99001b7de6a582879d1835
21

.NET Framework 4.6.2

.NET 11.0

.NET Standard 2.0

Version Downloads Last updated
11.0.0-preview.3.26207.106 4 04/15/2026
11.0.0-preview.2.26159.112 12 03/10/2026
11.0.0-preview.1.26104.118 13 02/12/2026
10.0.7 0 04/21/2026
10.0.6 5 04/15/2026
10.0.5 12 03/14/2026
10.0.4 12 03/14/2026
10.0.3 13 02/12/2026
10.0.2 21 01/14/2026
10.0.1 22 12/10/2025
10.0.0 16 12/23/2025
10.0.0-rc.2.25502.107 13 12/20/2025
10.0.0-rc.1.25451.107 13 12/14/2025
10.0.0-preview.7.25380.108 13 12/21/2025
10.0.0-preview.6.25358.103 12 12/19/2025
10.0.0-preview.5.25277.114 11 12/21/2025
10.0.0-preview.4.25258.110 13 12/10/2025
10.0.0-preview.3.25172.1 14 12/21/2025
10.0.0-preview.2.25164.1 9 12/14/2025
10.0.0-preview.1.25120.3 14 12/15/2025
9.0.15 5 04/15/2026
9.0.14 11 03/14/2026
9.0.13 12 02/12/2026
9.0.12 29 01/14/2026
9.0.11 16 12/21/2025
9.0.10 14 12/21/2025
9.0.9 14 12/10/2025
9.0.8 13 12/22/2025
9.0.7 13 12/12/2025
9.0.6 8 12/23/2025
9.0.5 13 12/15/2025
9.0.4 13 12/24/2025
9.0.3 11 12/19/2025
9.0.2 11 12/17/2025
9.0.1 15 12/14/2025
9.0.0 11 12/16/2025
9.0.0-rc.2.24474.3 12 12/14/2025
9.0.0-rc.1.24452.1 16 12/15/2025
9.0.0-preview.7.24406.2 19 12/10/2025
9.0.0-preview.6.24328.4 15 12/15/2025
9.0.0-preview.5.24306.11 12 12/19/2025
9.0.0-preview.4.24267.6 11 12/21/2025
9.0.0-preview.3.24172.13 11 12/14/2025
9.0.0-preview.2.24128.4 14 12/14/2025
9.0.0-preview.1.24081.5 13 12/10/2025
8.0.26 5 04/15/2026
8.0.25 10 03/14/2026
8.0.24 10 02/12/2026
8.0.23 15 01/14/2026
8.0.22 22 12/23/2025
8.0.21 12 12/23/2025
8.0.20 21 12/13/2025
8.0.19 15 12/21/2025
8.0.18 11 12/21/2025
8.0.17 10 12/21/2025
8.0.16 14 12/10/2025
8.0.15 12 12/21/2025
8.0.14 19 12/15/2025
8.0.13 15 12/14/2025
8.0.12 18 12/14/2025
8.0.11 14 12/15/2025
8.0.10 16 12/19/2025
8.0.8 12 12/15/2025
8.0.7 15 12/24/2025
8.0.6 16 12/14/2025
8.0.5 14 12/11/2025
8.0.4 11 12/16/2025
8.0.3 16 12/17/2025
8.0.2 11 12/20/2025
8.0.1 11 12/15/2025
8.0.0 8 12/24/2025
8.0.0-rc.2.23480.2 11 12/21/2025
8.0.0-rc.1.23421.29 16 12/12/2025
8.0.0-preview.7.23375.9 10 12/21/2025
8.0.0-preview.6.23329.11 15 12/14/2025
8.0.0-preview.5.23302.2 14 12/21/2025
8.0.0-preview.4.23260.4 9 12/15/2025
8.0.0-preview.3.23177.8 17 12/15/2025
8.0.0-preview.2.23153.2 23 12/21/2025
8.0.0-preview.1.23112.2 17 12/14/2025
7.0.20 16 12/14/2025
7.0.19 11 12/15/2025
7.0.18 9 12/21/2025
7.0.17 9 12/21/2025
7.0.16 11 12/17/2025
7.0.15 13 12/14/2025
7.0.14 12 12/11/2025
7.0.13 9 12/14/2025
7.0.12 11 12/15/2025
7.0.11 11 12/11/2025
7.0.10 14 12/18/2025
7.0.9 9 12/24/2025
7.0.8 11 12/13/2025
7.0.7 14 12/15/2025
7.0.5 10 12/16/2025
7.0.4 14 12/14/2025
7.0.3 10 12/15/2025
7.0.2 11 12/14/2025
7.0.1 14 12/15/2025
7.0.0 12 12/11/2025
7.0.0-rc.2.22476.2 14 12/21/2025
7.0.0-rc.1.22427.2 12 12/14/2025
7.0.0-preview.7.22376.6 10 12/20/2025
7.0.0-preview.6.22330.3 7 12/21/2025
7.0.0-preview.5.22303.8 10 12/16/2025
7.0.0-preview.4.22251.1 11 12/15/2025
7.0.0-preview.3.22178.4 11 12/14/2025
7.0.0-preview.2.22153.2 12 12/15/2025
7.0.0-preview.1.22109.13 13 12/21/2025
6.0.36 13 12/14/2025
6.0.35 17 12/14/2025
6.0.33 11 12/20/2025
6.0.32 13 12/12/2025
6.0.31 10 12/16/2025
6.0.30 9 12/21/2025
6.0.29 13 12/12/2025
6.0.28 12 12/11/2025
6.0.27 11 12/16/2025
6.0.26 9 12/13/2025
6.0.25 9 12/15/2025
6.0.24 12 12/19/2025
6.0.23 13 12/15/2025
6.0.22 13 12/18/2025
6.0.21 14 12/17/2025
6.0.20 18 12/14/2025
6.0.19 13 12/17/2025
6.0.18 13 12/14/2025
6.0.16 16 12/12/2025
6.0.15 19 12/18/2025
6.0.14 18 12/17/2025
6.0.13 11 12/15/2025
6.0.12 21 12/18/2025
6.0.11 17 12/21/2025
6.0.10 12 12/11/2025
6.0.9 11 12/15/2025
6.0.8 17 12/20/2025
6.0.7 12 12/24/2025
6.0.6 17 12/15/2025
6.0.5 11 12/15/2025
6.0.4 19 12/11/2025
6.0.3 9 12/14/2025
6.0.2 15 12/14/2025
6.0.1 13 12/16/2025
6.0.0 9 12/23/2025
6.0.0-rc.2.21480.10 17 12/21/2025
6.0.0-rc.1.21452.15 13 12/21/2025
6.0.0-preview.7.21378.6 12 12/15/2025
6.0.0-preview.6.21355.2 12 12/21/2025
6.0.0-preview.5.21301.17 12 12/21/2025
6.0.0-preview.4.21253.5 12 12/14/2025
6.0.0-preview.3.21201.13 12 12/14/2025
6.0.0-preview.2.21154.6 14 12/14/2025
6.0.0-preview.1.21103.6 16 12/14/2025
5.0.17 11 12/15/2025
5.0.16 12 12/14/2025
5.0.15 14 12/16/2025
5.0.14 15 12/14/2025
5.0.13 11 12/14/2025
5.0.12 13 12/21/2025
5.0.11 21 12/15/2025
5.0.10 13 12/21/2025
5.0.9 16 12/14/2025
5.0.8 17 12/14/2025
5.0.7 14 12/15/2025
5.0.6 15 12/15/2025
5.0.5 12 12/14/2025
5.0.4 12 12/15/2025
5.0.3 10 12/14/2025
5.0.2 13 12/14/2025
5.0.1 11 12/15/2025
5.0.0 17 12/24/2025
5.0.0-rc.2.20475.17 7 12/21/2025
5.0.0-rc.1.20451.17 13 12/10/2025
5.0.0-preview.8.20414.8 12 12/15/2025
5.0.0-preview.7.20365.19 15 12/14/2025
5.0.0-preview.6.20312.15 16 12/15/2025
5.0.0-preview.5.20279.2 10 12/14/2025
5.0.0-preview.4.20257.10 9 12/14/2025
5.0.0-preview.3.20215.14 9 12/21/2025
5.0.0-preview.2.20167.3 13 12/11/2025
5.0.0-preview.1.20124.5 14 12/15/2025
3.1.32 14 12/21/2025
3.1.31 10 12/10/2025
3.1.30 14 12/21/2025
3.1.29 13 12/14/2025
3.1.28 13 12/14/2025
3.1.27 16 12/11/2025
3.1.26 11 12/21/2025
3.1.25 12 12/21/2025
3.1.24 12 12/14/2025
3.1.23 12 12/21/2025
3.1.22 13 12/21/2025
3.1.21 11 12/21/2025
3.1.20 14 12/13/2025
3.1.19 13 12/13/2025
3.1.18 10 12/21/2025
3.1.17 14 12/15/2025
3.1.16 13 12/11/2025
3.1.15 19 12/14/2025
3.1.14 16 12/15/2025
3.1.13 15 12/14/2025
3.1.12 16 12/21/2025
3.1.11 11 12/21/2025
3.1.10 15 12/13/2025
3.1.9 9 12/18/2025
3.1.8 12 12/12/2025
3.1.7 10 12/18/2025
3.1.6 15 12/24/2025
3.1.5 12 12/24/2025
3.1.4 11 12/15/2025
3.1.3 9 12/14/2025
3.1.2 16 12/11/2025
3.1.1 16 12/14/2025
3.1.0 13 12/15/2025
3.1.0-preview3.19555.2 10 12/10/2025
3.1.0-preview2.19528.8 9 12/17/2025
3.1.0-preview1.19508.20 9 12/21/2025
3.0.3 13 12/24/2025
3.0.2 11 12/14/2025
3.0.0 14 12/14/2025
3.0.0-rc1.19457.4 12 12/21/2025
3.0.0-preview9.19424.4 12 12/14/2025
3.0.0-preview8.19405.7 11 12/17/2025
3.0.0-preview7.19365.7 9 12/21/2025
3.0.0-preview6.19307.2 16 12/15/2025
3.0.0-preview5-19227-01 14 12/21/2025
3.0.0-preview4-19216-03 9 12/21/2025
3.0.0-preview3-19153-02 14 12/14/2025
3.0.0-preview-19075-0444 15 12/14/2025
3.0.0-preview-18579-0056 12 12/15/2025
2.3.9 21 01/12/2026
2.3.8 24 01/12/2026
2.3.0 11 12/11/2025
2.2.0 17 12/23/2025
2.2.0-preview3-35497 13 12/21/2025
2.2.0-preview2-35157 14 12/14/2025
2.2.0-preview1-35029 12 12/13/2025
2.1.1 14 12/15/2025
2.1.0 12 12/15/2025
2.1.0-rc1-final 14 12/20/2025
2.1.0-preview2-final 12 12/21/2025
2.1.0-preview1-final 11 12/21/2025
2.0.0 10 12/24/2025
2.0.0-preview2-final 11 12/15/2025
2.0.0-preview1-final 12 12/21/2025
1.1.2 19 12/23/2025
1.1.1 11 12/14/2025
1.1.0 25 12/16/2025
1.1.0-preview1-final 12 12/14/2025
1.0.0 11 12/24/2025
1.0.0-rc2-final 10 12/20/2025