internal HistoricalCountryNav ToRuntimeNav() { var ret = new HistoricalCountryNav { Key = (Cep1CrCode, Since, EndedIn), Code = Cep1CrCode, Name = Name }; if (Previous != null) { ret.Previous = (Previous.Cep1CrCode !.Value, Previous.Since, Previous.EndedIn); } if (Next != null && Next.Any()) { foreach (var current in Next) { ret.Next.Add((current.Cep1CrCode !.Value, current.Since, current.EndedIn)); } } return(ret); } }
public override bool IsValid() { if (!base.IsValid()) { return(false); } if (Previous is null && (Next is null || !Next.Any())) { return(false); } if (Since <= 0) { return(false); } if (Flag == -1) { return(false); } return(true); }