Changeset 17394 for branches/3026_IntegrationIntoSymSpace/HeuristicLab.JsonInterface/Converters/EnumTypeConverter.cs
- Timestamp:
- 01/07/20 16:25:39 (4 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/3026_IntegrationIntoSymSpace/HeuristicLab.JsonInterface/Converters/EnumTypeConverter.cs
r17342 r17394 9 9 namespace HeuristicLab.JsonInterface { 10 10 public class EnumTypeConverter : BaseConverter { 11 public override void InjectData(IItem item, JsonItem data) => 12 item.Cast<dynamic>().Value = Enum.Parse( 11 public override int Priority => 1; 12 public override Type ConvertableType => typeof(EnumValue<>); 13 14 public override void InjectData(IItem item, JsonItem data, IJsonItemConverter root) => 15 ((dynamic)item).Value = Enum.Parse( 13 16 item.GetType().GenericTypeArguments.First(), 14 17 CastValue<string>(data.Value)); 15 18 16 public override JsonItem ExtractData(IItem value) { 17 JsonItem data = new JsonItem(); 19 public override void Populate(IItem value, JsonItem item, IJsonItemConverter root) { 18 20 object val = ((dynamic)value).Value; 19 21 Type enumType = val.GetType(); 20 data.Value = Enum.GetName(enumType, val); 21 data.Range = Enum.GetNames(enumType); 22 return data; 22 item.Value = Enum.GetName(enumType, val); 23 item.Range = Enum.GetNames(enumType); 23 24 } 24 25 }
Note: See TracChangeset
for help on using the changeset viewer.