internal static Pet DeserializePet(JsonElement element) { string name = default; DaysOfWeekExtensibleEnum?daysOfWeek = default; IntEnum intEnum = default; foreach (var property in element.EnumerateObject()) { if (property.NameEquals("name")) { if (property.Value.ValueKind == JsonValueKind.Null) { continue; } name = property.Value.GetString(); continue; } if (property.NameEquals("DaysOfWeek")) { if (property.Value.ValueKind == JsonValueKind.Null) { continue; } daysOfWeek = new DaysOfWeekExtensibleEnum(property.Value.GetString()); continue; } if (property.NameEquals("IntEnum")) { intEnum = new IntEnum(property.Value.GetString()); continue; } } return(new Pet(name, daysOfWeek, intEnum)); }
void IUtf8JsonSerializable.Write(Utf8JsonWriter writer) { writer.WriteStartObject(); if (Name != null) { writer.WritePropertyName("name"); writer.WriteStringValue(Name); } if (DaysOfWeek != null) { writer.WritePropertyName("DaysOfWeek"); writer.WriteStringValue(DaysOfWeek.Value.ToString()); } writer.WritePropertyName("IntEnum"); writer.WriteStringValue(IntEnum.ToString()); writer.WriteEndObject(); }