Newtonsoft JSON für .net ignoriert jsonproperty tags
Für einige wirklich irritierend Grund, die JsonProperty tags arbeiten nicht mit Newtonsoft ist Json für .net-tool. In meiner Klasse habe ich diese:
[JsonProperty(PropertyName = "id")]
public string ID { get; set; }
[JsonProperty(PropertyName = "title")]
public string Title { get; set; }
[JsonProperty(PropertyName = "url")]
public string Url { get; set; }
[JsonProperty(PropertyName = "class")]
public string EventClass { get; set; }
[JsonProperty(PropertyName = "start")]
public string Start { get; set; }
[JsonProperty(PropertyName = "end")]
public string End { get; set; }
Aber ich erhalte diese
{"success":true,
"result": [{
"ID":"0",
"Title":"Eid ul-Fitr",
"Url":"<blah>",
"EventClass":"event-info",
"Start":"1406520000000",
"End":"1406606400000"},
etc.
Wie Sie sehen können, es ist ignoriert mich die Einstellung der Eigenschaft name. Ich habe versucht mit [System.Runtime.Serialization.DataMember(Name="id")]
als auch und das hat nicht geklappt.
Hier ist, was wirklich ist, treibt mich die Wand hinauf. Es funktionierte gestern. Ich rollte Sie zurück, wo es war Letzte Nacht, als ich begangen, und es immer noch nicht funktionieren.
Irgendwelche Gedanken?
- Sie möchten vielleicht teilen Sie Ihren code.
- Warum, wenn ich die Serialisierung macht es ignorieren, PropertyNames, die ich zugeordnet.
- Wie sind Sie mit der Serialisierung der Klasse? Bitte zeigen Sie Ihren code.
- Ich bin nur zum telefonieren Json(MyClass) und Rückgabe.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Sind Sie sicher, dass Sie tatsächlich mit der Serialisierung verwenden Json.Net?
Json(MyClass)
ist ein ASP.NET MVC-Methode. MVC verwendet dieJavaScriptSerializer
Klasse, die nicht unterstützen[JsonProperty]
Attribute. Verwenden Sie die Attribute, die Sie benötigen würden, um die Serialisierung über die Json.Net MethodeJsonConvert.SerializeObject(MyClass)
. Wenn Sie möchten, dass die Rückkehr von JSON aus einem MVC-controller haben, dann würden Sie brauchen, rufen SieContent(jsonString, "application/json")
stattJson()
.