Ich habe eine Aktion, die ein JsonResult für ein Objekt einer bestimmten Klasse zurückgibt. Ich habe die Eigenschaften dieser Klasse mit einigen Attributen dekoriert, um Nullfelder zu vermeiden. Klassendefinition ist:MVC4 Aktion, die JsonResult ohne Null zurückgibt
private class GanttEvent
{
public String name { get; set; }
[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
public String desc { get; set; }
[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
public List<GanttValue> values { get; set; }
}
Und in meiner Aktion verwende ich ein Objekt
var res = new List<GanttEvent>();
die kehre ich mit:
return Json(res, JsonRequestBehavior.AllowGet);
Unfortunatelly, ich bin immer noch NULL-Werte am Ausgang empfangen:
[{"name":"1.1 PREVIOS AL INICIO ","desc":null,"values":null},{"name":"F04-PGA-S10","desc":"Acta preconstrucción","values":null},{"name":"F37-PGA-S10","desc":"Plan de inversión del anticipo","values":null},{"name":"F09-PGA-S10","desc":"Acta de vecindad","values":null},{"name":"F05-PGA-S10","desc":"Acta de inicio","values":null},{"name":"F01-PGA-S10","desc":"Desembolso de anticipo","values":null}]
Bin ich etwas vermissen oder etwas falsch machen?
Ich weiß nicht, ob diese Antwort noch relevant ist, aber ich brauchte so etwas und machte einen c/p Code. Leider hat es nicht wie erwartet funktioniert, aber ich habe Ihre JsonNetResult-Klasse leicht bearbeitet: var serializedObject = JsonConvert.SerializeObject (Daten, Formatierung.Nein, neue JsonSerializerSettings {NullValueHandling = NullValueHandling.Ignore}); ... und jetzt funktioniert es perfekt. Vielen Dank! – robertpaulsen