ho pori attraverso i documenti, StackOverflow, ecc, può non sembrano trovare questo ...Json.net come serializzare oggetto come valore
Quello che voglio fare è serializzare/deserializzare un semplice il valore-tipo di oggetto come un valore, non un oggetto, come così:
public class IPAddress
{
byte[] bytes;
public override string ToString() {... etc.
}
public class SomeOuterObject
{
string stringValue;
IPAddress ipValue;
}
IPAddress ip = new IPAddress("192.168.1.2");
var obj = new SomeOuterObject() {stringValue = "Some String", ipValue = ip};
string json = JsonConverter.SerializeObject(obj);
Quello che voglio è per il jSON serializzare in questo modo:
// json = {"someString":"Some String","ipValue":"192.168.1.2"} <- value serialized as value, not subobject
non dove l'ip diventa un oggetto nidificato , es:
// json = {"someString":"Some String","ipValue":{"value":"192.168.1.2"}}
Qualcuno sa come fare? Grazie! (PS sto bullonatura serializzazione JSON su una grande base di codice legacy peloso .NET, quindi non posso davvero cambiare tutti i tipi esistenti, ma posso aumentare/fattore/decorarle per facilitare la serializzazione JSON.)
Dovrebbe essere semplice come 'var obj = new() {ipValue = ip.Value};' dove Value è la proprietà che memorizza l'indirizzo IP. –