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 in
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
PropertyNamingPolicy is set to
JsonNamingPolicy 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());
}