Быстрая?Я думаю так.Создайте класс OfficeHoliday и отобразите его как один-ко-многим из Office, сопоставив коллекцию как частный член в Office.Затем выставьте свойство Holidays и методы его обслуживания.
public class Office
{
private IList<OfficeHoliday> _officeHolidays;
public virtual Guid Id { get; set; }
public IEnumerable<DateTime> Holidays
{
get { return _officeHolidays.Select(x => x.Holiday); }
}
public void AddHoliday(DateTime holiday)
{
// should check if it already exists first...
var newHoliday = new OfficeHoliday(this, holiday.Date);
_officeHolidays.Add(newHoliday);
}
public void RemoveHoliday(DateTime holiday)
{
var removeHoliday = _officeHolidays.FirstOrDefault(x => x.Holiday == holiday.Date);
if (removeHoliday != null)
{
_officeHolidays.Remove(removeHoliday);
}
}
}