オブジェクトをシリアル化し、Web サービスから json として返しています。ただし、シリアル化された json から null プロパティを省略しようとしています。これを行う方法はありますか?Web Api MVC 4 ベータ版を使用しています。
質問する
9457 次
2 に答える
15
現在、ASP.NET Web API (最終リリースで Json.Net を使用するように変更する計画があります) は、既定でDataContractJsonSerializerを使用して JSON をシリアル化します。
したがって、標準の DataContract/DataMember 属性を使用してシリアル化プロセスを制御できます。null プロパティをスキップするには、EmitDefaultValueを false に設定します。
[DataContract]
public class MyObjet
{
[DataMember(EmitDefaultValue = false)]
public string Prop1 { get; set; }
[DataMember(EmitDefaultValue = false)]
public string Prop2 { get; set; }
}
JSON 応答のシリアライズ方法をさらに制御したい場合は、Json.Netまたは組み込みのJavaScriptSeralizerを使用するフォーマッターを含むWebAPIContribパッケージを使用できます。
于 2012-04-14T07:20:09.500 に答える