Anil Namde
Anil Namde

Reputation: 6618

DataContractJsonSerializer generating Ghost string to JSON keys?

DataContractJsonSerializer this is nice class added in the .net framework which can be used to serialize/desirealize object into JSON.

Now following is the example i am trying

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

Now following is the output generated

Output : Notice structure where only "name" is expected instead of k__BackingField

Now this is the problem after digging so much i am not sure from where <> and _BackingField is coming ?

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

Upvotes: 4

Views: 1934

Answers (1)

Rob Windsor
Rob Windsor

Reputation: 6859

This is just an educated guess. I think it's because you're using public fields instead of properties for name and userid.

Edit: It appears it also has to do with the fact that you are using the [Serializable] attribute instead of [DataContract] and [DataMember]. Check out this post for more detail:

C# automatic property deserialization of JSON

Upvotes: 3

Related Questions