2011-11-06 1 views
2

내 마지막 질문 (http://stackoverflow.com/questions/8027748/render-c-sharp-class-as-javascript/8027824#8027824)에 따라, m 이제 JSON.net을 사용하여 일부 클래스를 JSON으로 변환합니다. 잘 작동하지만 다른 클래스를 멤버로 포함하는 클래스가 있습니다. 예 :null 속성을 가진 클래스를 무시하는 JSON.Net

public class Parent 
{ 
    public Child Child { get; set; } 
    public string Var { get; set; } 
} 

json.net을 사용하여 이것을 렌더링 할 때 null을 무시하도록 serializer를 설정할 수 있습니다. 즉, Var 멤버가 설정되지 않은 경우 인쇄되지 않습니다. 자식 멤버의 값에 따라 동일한 동작을 원합니다. 따라서 Child의 모든 구성원이 null이면 전체 클래스는 "{}"로 렌더링되고 부모 개체에서 모두 무시되어야합니다.

이것이 가능합니까?

답변

0

본인이 직접 JSON.Net을 사용하지 않았으므로이 방법을 사용할지 여부는 알 수 없습니다.

Child 인스턴스의 경우 JsonConverter을 직접 연결할 수 있다면 제안 할 수 있습니다. 리플렉션을 사용하여 모든 입력란이 null인지 확인하거나 너무 많지 않으면 수동으로 테스트하면됩니다.). 그렇다면 {}을 생성하고 그렇지 않은 경우 사용 된 변환기로 위임하십시오.