4.7.3 Cambiando el formato del Json de los servicios
Los Json que regresan nuestros servicios tienen el nombre de las variables en minúsculas
[
{
"id": 1,
"clave": 1,
"nombre": "Análgesicos"
}
]
Podemos cambiar el fomarto para escribir la primer letra de cada variable en mayúsculas, si el campo de la clase es compuesto como por ejemplo NombreCategoria, regresaría NombreCategoría
[
{
"Id": 1,
"Clave": 1,
"NombreCategoría": "Análgesicos"
}
]
En nuestra clase Startup en el método ConfigureServices donde agregamos las opciones para cambiar los mensajes de error agregamos AddJsonOptions(JsonOptions => JsonOptions.SerializerSettings.ContractResolver = new DefaultContractResolver()) recuerda agregar el import con Ctrl + .
public void ConfigureServices(IServiceCollection services)
{
//Indicamos que el modelo tomara los mensajes de error
// del archivo SharedResource
services.AddControllers()
.SetCompatibilityVersion(CompatibilityVersion.Latest)
.AddJsonOptions(JsonOptions =>
JsonOptions.JsonSerializerOptions.PropertyNamingPolicy = null)
También podemos cambiarla para que tome la notación conocida como camelCase. Si el nombre es compuesto la primer letra es minúscula y la primer letra que separa el nombre compuesto es mayúscula. Por ejemplo nombreCategoría. Solo debes cambiar el parámetro del ContractResolver a CamelCasePropertyNamesContractResolver
public void ConfigureServices(IServiceCollection services)
{
//Indicamos que el modelo tomara los mensajes de error
// del archivo SharedResource
services.AddMvc().SetCompatibilityVersion
(CompatibilityVersion.Version_2_1)
.AddJsonOptions(JsonOptions =>
JsonOptions.SerializerSettings.ContractResolver =
new CamelCasePropertyNamesContractResolver())
Last updated
Was this helpful?