Есть следующие модели:
public class Duty
{
public int DutyId { get; set; }
public int dateId { get; set; }
public Date DateOfDuty { get; set; }
public int typeOfDutyId { get; set; }
public TypeOfDuty typeOfDuty { get; set; }
public List<DutyOfPerson> DutyPerson { get; set; }
}
TypeOfDuty
public class TypeOfDuty
{
public int typeOfDutyId { get; set; }
public string Name { get; set; }
public List<RoleInDuty> rolesInDuty { get; set; }
}
RoleInDuty
public class RoleInDuty
{
public int roleInDutyId { get; set; }
public string Name { get; set; }
public int typeOfDutyId { get; set; }
}
Person
public class Person
{
public int PersonId { get; set; }
public string Name { get; set; }
public List<DutyOfPerson> DutyPerson{ get; set; }
}
Cоздаю связной класc Person-Duty:
public class DutyPerson
{
public int DutyId { get; set; }
public Duty Duty { get; set; }
public int PersonId { get; set; }
public Person Person { get; set; }
}
Теперь есть возможность установить дежурство, его тип и назначить людей в дежурство, но как теперь приписать роль человеку в данном дежурстве?
Примерная схема БД
И ещё установить, в каком дежурстве может участвовать человек и какие роли может выполнять (это второстепенно). Первое понятно как выполнить=> создать связную таблицу типа PersonTypeOfDuty, но опять же как установить какие роли он может выполнять в данных дежурствах?