2010-05-21 3 views
3

DataContractJsonSerializer C'est une classe sympa ajoutée dans le framework .net qui peut être utilisée pour sérialiser/désaliser un objet dans JSON.DataContractJsonSerializer générant une chaîne Ghost en clé JSON?

maintenant Voici l'exemple que je suis en train

[Serializable] class User { public string name;  public string userId; } 

suit est la sortie générée

sortie: structure Avis où seul « nom » est prévu au lieu de k__BackingField

Maintenant, c'est le problème après avoir creusé tellement je ne suis pas sûr d'où <> et _BackingField vient?

{ 
"<name>k__BackingField":"test user", 
"<userId>k__BackingField":100001} 

Répondre

3

Ceci est juste une supposition éclairée. Je pense que c'est parce que vous utilisez des champs publics au lieu de propriétés pour le nom et l'ID utilisateur.

Editer: Il semble que cela soit dû au fait que vous utilisez l'attribut [Serializable] au lieu de [DataContract] et [DataMember]. Vérifiez ce post pour plus de détails:

C# automatic property deserialization of JSON

+0

Merci d'avoir répondu à ........ je compris que les propriétés implicites C# 3.0 entraînant comme compilateur ajoute le code pour le faire. Cela se reflète lors de la sérialisation. –

Questions connexes