Jak zignorować JsonProperty (PropertyName = „someName”) podczas serializowania json?

Mam kod C # wykorzystujący ASP.Net MVC, który wykorzystuje Json.Net do serializowania niektórych DTO. Aby zmniejszyć ładunek, użyłem atrybutu [JsonProperty (PropertyName = "shortName")], aby używać krótszych nazw właściwości podczas serializacji.

Działa to doskonale, gdy klient jest inną aplikacją lub usługą .Net, ponieważ deserializacja przywraca hierarchię obiektów do siebie, używając dłuższych, bardziej przyjaznych nazw, przy jednoczesnym zachowaniu niskiej ładowności transferu.

Problem pojawia się, gdy klient jest javascript / ajax za pośrednictwem przeglądarki. To sprawia, że ​​prośba i dostaje json ... ale to json używa skróconych mniej przyjaznych nazw.

Jak sprawić, aby silnik serializacji json.net zignorował programowo atrybut [JsonProperty (PropertyName = "shortName")]? Idealnie, moja usługa MVC będzie tam siedzieć i normalnie serializować używając skróconych nazw nieruchomości. Gdy mój kod wykryje określony parametr, chciałbym uzyskać dane serializowane przy użyciu dłuższych nazw i zignorować atrybut [JsonProperty ()].

Jakieś sugestie?

Dzięki,

Kevin

questionAnswers(1)

yourAnswerToTheQuestion