Relatude Help

Working with an embedded map

var venue = db.Create<IVenue>();
venue.Hours.Add(new OpeningHours { DayCode = "mon", Opens = new(9, 0, 0), Closes = new(23, 0, 0) });
db.Insert(venue);

// keys work once the parent is stored
var stored = db.Get<IVenue>(venue.Id);
var mon    = stored.Hours["mon"];
int days   = stored.Hours.Count;                  // a property, not a method
bool open  = stored.Hours.Contains("mon");        // by key, not by value

foreach (var h in stored.Hours)                   // enumerates the values
    Console.WriteLine($"{h.DayCode}: {h.Opens}–{h.Closes}");

foreach (var (day, h) in stored.Hours.KeysAndValues()) { … }   // with the keys