Json.NET enumera "Deserialización de propiedades insensible a las mayúsculas y minúsculas" como una de las características anunciadas. He leído que primero se intentará hacer coincidir el caso de la propiedad especificada y, si no se encuentra una coincidencia, se realiza una búsqueda que no distingue entre mayúsculas y minúsculas. Sin embargo, este no parece ser el comportamiento predeterminado. Véase el siguiente ejemplo:Deserialización de propiedades insensible a las mayúsculas y minúsculas Json.NET
var result =
JsonConvert.DeserializeObject<KeyValuePair<int, string>>(
"{key: 123, value: \"test value\"}"
);
// result is equal to: default(KeyValuePair<int, string>)
Si la cadena JSON se altera para que coincida con el caso de las propiedades ("clave" y "Valor" vs "clave" y "valor") entonces todo está bien:
var result =
JsonConvert.DeserializeObject<KeyValuePair<int, string>>(
"{Key: 123, Value: \"test value\"}"
);
// result is equal to: new KeyValuePair<int, string>(123, "test value")
¿Hay alguna forma de realizar una deserialización insensible a mayúsculas y minúsculas?
Gracias por la explicación y corregir. No sabía que se usó un convertidor para KeyValuePair. –