Moje pytanie jest proste, ale nieco bardziej szczegółowe niż inne pytania związane z serializacją typów wyliczeniowych jako ciągów.C# - Web API - Serializing Enums jako ciągi ze spacjami
Rozważmy następujący fragment kodu:
using Newtonsoft.Json;
using Newtonsoft.Json.Converters;
public enum MyEnum
{
TypeOne,
TypeTwo,
TypeThree
}
public class Foo
{
[JsonConverter(typeof(StringEnumConverter))]
public MyEnum Types { get; set; }
}
Gdy sterownik Web API wysyła odcinkach obiektów Foo, mogą one wyglądać tak:
{
"Type" : "TypeTwo"
}
Moje pytanie: jest to możliwe wysyłać serializowane wyliczenia jako łańcuchy ze spacjami przed każdą wielką literą? Takie rozwiązanie spowodowałoby powstanie JSON w następujący sposób:
{
"Type" : "Type Two"
}
Daj mi znać, jeśli są jakieś dodatkowe informacje potrzebne do rozwiązania mojego problemu. Dzięki!
Edycja:
Jest korzystne, jeśli teksty stałe przekształca się jedynie łańcuchów z przestrzeni podczas szeregowania ich JSON. Chciałbym wykluczyć spacje podczas używania MyEnum.ToString()
na zapleczu.
Czy dodanie elementu EnumMemberAttribute '[EnumMember (" Type Two ")]' coś robi? Źródło StringEnumConverter na githubie wydaje się to wykorzystywać. –
Nie jestem pewien, ale czy sądzisz, że użycie tego atrybutu będzie miało wpływ na każdą metodę 'MyEnum.ToString()'? – TheBrogrammer