Jsonシリアライズのこれらのプロパティをnullにしたいと思います。これについて 私のwebapi.config
ファイルにこの行を追加しました。Web APIのシリアライザのnull値とデフォルト値を無視します
config.Formatters.JsonFormatter.SerializerSettings = new JsonSerializerSettings {NullValueHandling = NullValueHandling.Ignore};
public static void Register(HttpConfiguration config)
{
config.SuppressDefaultHostAuthentication();
config.Filters.Add(new HostAuthenticationFilter(OAuthDefaults.AuthenticationType));
config.MapHttpAttributeRoutes();
config.Routes.MapHttpRoute(
name: "DefaultApi",
routeTemplate: "api/{controller}/{action}/{identifier}",
defaults: new { identifier = RouteParameter.Optional }
);
config.Formatters.JsonFormatter.SerializerSettings = new JsonSerializerSettings { NullValueHandling = NullValueHandling.Ignore, DefaultValueHandling= DefaultValueHandling.Ignore };
}
ただし、nullのプロパティは無視されません。
これは、それは私がDOBとIMAGEIDの値を割り当てていないWeb APIを
{
"fullname": "Amit Kumar",
"imageid": 0,
"dob": null
}
からのJSONリターンです
public class UserProfile
{
[JsonProperty("fullname")]
public string FullName { get; set; }
[JsonProperty("imageid")]
public int ImageId { get; set; }
[JsonProperty("dob")]
public Nullable<DateTime> DOB { get; set; }
}
私のクラスです。
私はこれに続きますLink、しかしそれは私の問題を解決しませんでした。
をあなたがシリアライズしたり、選択的に決定する必要があります任意のオブジェクト内のすべてのNULLプロパティを無視しますかどのプロパティをnull値で無視しますか? –
@FedericoDipuma:すべてのオブジェクトで無視したいので、それをグローバルに追加しました。 –
@MostafizurRahman:いいえ、重複する質問ではありません。 –