In this article I will explain with an example, how to change the default Camel Case JSON Output in ASP.Net Core (.Net Core 2).
Need to change the JSON Serializer setting
The ASP.Net Core (.Net Core 2)
AJAX program will work, but you will see undefined values in the
JavaScript Alert Message Box (as shown below) when you try to parse the
JSON.
Configuring JSON Serializer setting
The first step is to configure the JSON Serializer settings in the Startup.cs file.
1. Open the Startup.cs class from the Solution Explorer window.
2. Inherit the following namespace.
using Newtonsoft.Json.Serialization;
3. Inside the
ConfigureServices method of
Startup.cs class, the
AddJsonOptions method of the services object is called where the
ContractResolver is set to
DefaultContractResolver object which will instruct the program to use
Newtonsoft library for
JSON serialization.
This will remove the default
Camel Case naming policy and
JSON property names will remain intact as defined in the classes.
public void ConfigureServices(IServiceCollection services)
{
services.AddMvc()
.AddJsonOptions(options => options.SerializerSettings.ContractResolver = new DefaultContractResolver());
}