Estoy tratando de convertir JSON en objeto C# utilizando Json.NET. El objeto se parece a esto en C#:Json.NET, no se puede deserializar tipo nulable
public class MyObject
{
public int? integerValue {get;set;}
public DateTime? dateTimeValue {get;set;}
}
Pero cuando corro JsonConvert.DeserializeObject()
en el JSON entrante, me sale el siguiente excepción:
incapaz de encontrar un constructor de usar para el tipo sistema. Nullable`1 [System.Int32]. Una clase debe tener un constructor predeterminado o solo un constructor con argumentos.
--- ---- EDITAR
Pues resulta que después de hacer muchas pruebas, el problema se reduce a que mi entrada para mi JSON fue así:
{integerValue:{}, dateTimeValue: {} }
en lugar de:
{integerValue: null, dateTimeValue: null}
resulta que el {} es una forma válida de representar un objeto nulo en JSON, pero el analizador JSON.Net no sabía para tratar a {} kens de la misma manera que 'null' cuando se deserializa.
¡Gracias a todos por su colaboración!
¿Puedes agregar el JSON que intentas deserializar? – Amy
Sí. ver mi edición :) – 7wp
Tuve el mismo problema, excepto {value: "null"} en lugar de {value: null}. – craastad