37 lines
1.3 KiB
C#
37 lines
1.3 KiB
C#
using System.Text.Json;
|
|
using System.Text.Json.Serialization;
|
|
|
|
namespace View_by_Distance.Shared.Models;
|
|
|
|
public class Named : Properties.INamed
|
|
{
|
|
|
|
protected readonly bool? _IsWrongYear;
|
|
protected readonly DateTime _MinimumDateTime;
|
|
protected readonly int? _NormalizedPixelPercentage;
|
|
protected readonly PersonBirthday? _PersonBirthday;
|
|
public bool? IsWrongYear => _IsWrongYear;
|
|
public DateTime MinimumDateTime => _MinimumDateTime;
|
|
public int? NormalizedPixelPercentage => _NormalizedPixelPercentage;
|
|
public PersonBirthday? PersonBirthday => _PersonBirthday;
|
|
|
|
[JsonConstructor]
|
|
public Named(bool? isWrongYear, DateTime minimumDateTime, int? normalizedPixelPercentage, PersonBirthday? personBirthday)
|
|
{
|
|
_IsWrongYear = isWrongYear;
|
|
_MinimumDateTime = minimumDateTime;
|
|
_NormalizedPixelPercentage = normalizedPixelPercentage;
|
|
_PersonBirthday = personBirthday;
|
|
}
|
|
|
|
public Named(bool? isWrongYear, DateTime minimumDateTime, PersonBirthday? personBirthday) :
|
|
this(isWrongYear, minimumDateTime, null, personBirthday)
|
|
{ }
|
|
|
|
public override string ToString()
|
|
{
|
|
string result = JsonSerializer.Serialize(this, new JsonSerializerOptions() { WriteIndented = true });
|
|
return result;
|
|
}
|
|
|
|
} |