Pregunta

Es posible realizar el lanzamiento de la biblioteca de SERVICESTACK.TEXT cuando intente deserializar el JSON no válido.De forma predeterminada, parece que el JSON no válido simplemente se ignora, de modo que el objeto de resultado contiene valores nulos.

Cuando intento deserializar este JSON (A "Falta después de MongoconnectionString)

{
"MongoDb": {
"MongoConnectionString:"mongodb://localhost:27017/x",
"MongoDatabase":"x",    
"MongoSafeModeEnabled":true, 
"MongoSafeModeFSync":true,
"MongoSafeModeWriteReplicationCount":
"MongoSafeModeWriteTimeout":"00:00:00"
},

haciendo esto: jsonserializer.deserializefromstring (JSON); donde

public class Configuration {
    public class MongoDbSettings
    {
        public string MongoConnectionString {get;set;}
        public string MongoDatabase {get;set;}
        public bool MongoSafeModeEnabled {get;set;}
        public bool MongoSafeModeFSync {get;set;}
        public int MongoSafeModeWriteReplicationCount {get;set;}
        public TimeSpan MongoSafeModeWriteTimeout {get;set;}
    }
}

Obtengo un objeto de configuración donde los mongodbsettings son nulos.Preferiría obtener una ejecución en este caso.¿Esto es posible?

¿Fue útil?

Solución

Por el momento, los serializadores de MADRICESTACK están optimizados para la resiliencia, es decir, deserializar tanto como sea posible sin error.

Recomendaría agregar parte de su propia validación que comprueba la serialización publicada para hacer ejercicio qué campos no estaban deserializados correctamente.

También puede enviar una solicitud de extracción a la servicestack.text proyecto que admite unaIndicador opt-in (es decir, en JSCONFIG) para cambiar el comportamiento para lanzar excepciones.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top