Służę do szeregowania obiektów i powracam jako json z mojej usługi internetowej. Jednak próbuję pominąć właściwości null z serializowanego json. Czy jest jakiś sposób na zrobienie tego? Używam wersji beta programu Web Api MVC 4.Usuwanie właściwości Null z Json w MVC Web Api 4 Beta
Odpowiedz
Obecnie ASP.NET Web API (there are plans, aby zmienić go na wersję ostateczną do używania Json.Net) domyślnie używa DataContractJsonSerializer do serializowania JSON.
Dzięki temu można kontrolować proces serializacji za pomocą standardowych atrybutów DataContract/DataMember. Aby pominąć właściwości null, można ustawić wartość EmitDefaultValue na wartość false.
[DataContract]
public class MyObjet
{
[DataMember(EmitDefaultValue = false)]
public string Prop1 { get; set; }
[DataMember(EmitDefaultValue = false)]
public string Prop2 { get; set; }
}
Jeśli chcesz mieć większą kontrolę nad tym, w jaki sposób odpowiedzi JSON są szeregowane można skorzystać z pakietu, który zawiera WebAPIContrib formatery użyciu Json.Net lub wbudowanego w JavaScriptSeralizer.
W Json.Net można użyć JsonPropertyAttribute z NullValueHandling = NullValueHandling.Ignore. Wygląda na to, że nie ma takiej możliwości dla całej klasy, a jedynie dla każdego pola/właściwości klasy.
[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
public string SometimesNull { get; set; }
FYI. Istnieje a reasons, dlaczego Json.Net domyślnie serializuje właściwości z wartościami null. Spójrz, mogą być niektóre z tych powodów, które dotyczą twoich spraw.
- 1. MVC 4 Web Api Post
- 2. Usuwanie ukośnik z Web API JSON C#
- 3. Web api open oauth (DotNetOpenAuth) mvc 4
- 4. .NET 4 Web API odbiera dane NULL w parametrach
- 5. Parametr dla metody POST Web API 4 null, gdy wywołana z Skrzypka z korpusem JSON
- 6. MVC strona 4 Beta błędem instalacji strona
- 7. Usuwanie odwołań z projektu Asp.Net Web Api
- 8. ASP.NET MVC 4 Web API Authentication z dostawcą członkostwa
- 9. Kontroler ASP.Net MVC 4 Web API nie współpracuje z Unity.WebApi
- 10. EntityFramework z WEB API, zaktualizuj wszystkie właściwości
- 11. usuwanie wierszy z tablicy JSON pozostawia „null”
- 12. Zabezpieczenie tokena internetowego JSON w Web API/MVC 6
- 13. Opublikowanie DateTime do ApiController w ASP MVC 4 (Beta)
- 14. Powrót camelCased JSON z Web API
- 15. Autofac i ASP .Net MVC 4 Web API
- 16. post JSON ciąg Web API
- 17. Aplikacja mVC 4 web api dla wielu aplikacji
- 18. mvc 4 web api dodaj niestandardową odpowiedź nagłówek http
- 19. asp web api serializacja json zwraca właściwości prywatne
- 20. ASP.NET 4 MVC Web API: dokumentacja dla złożonego routingu
- 21. Test integracji i test jednostkowy (WEB API mvc 4)
- 22. Asp.net MVC 4 + WEB API - Niestandardowy token uwierzytelniania
- 23. Czy Simple Injector obsługuje MVC 4 ASP.NET Web API?
- 24. Wzrost maxJsonLength odpowiedzi json w MVC 4
- 25. Ukryj właściwości o wartości pustej w ASP.NET Web API
- 26. Sprawdzanie poprawności właściwości modelu WCF Web APi
- 27. Powróć plik JSON z ASP.NET Web API
- 28. Wywołania Web API z RestSharp - dodaje aplikację/json do treści powodującej parametr null w działaniu
- 29. Umieszczanie tablicy obiektów za pomocą interfejsu API MVC Web API
- 30. Jak mogę przetestować niestandardowy DelegatingHandler w ASP.NET MVC 4 Web API?
Właściwie próbuję pominąć. – kkocabiyik