Diversidade-Tabela EntityFramework Many-to-Many

Eu estou trabalhando com código primeiro do EF4.1 e estou tentando criar algumas tabelas de relacionamento muitos-para-muitos onde as tabelas precisariam ser vinculadas. Por favor, veja um pequeno trecho de código abaixo:

class Event
{
    int EventId { get; set; }
    ICollection<Contact> Contacts { get; set; }
}

class Contact
{
    int ContactId { get; set; }
    ICollection<Relation> Relations { get; set; }
}

class Relation
{
    int RelationId { get; set; }
    string Name { get; set; }
}   

Assim, o objeto Contatos pode ter muitos tipos diferentes de relacionamento, como "Mãe", "Pai", "Irmão" etc.

Eu preciso acompanhar algum tipo de evento em que um contato tenha participado, mas eu quero saber como ele está relacionado com a pessoa que hospeda o evento. Então, por exemplo, ele era o Irmão, Pai ou Marido do Viajante? Em outro evento, a mesma pessoa pode aparecer, mas seja o cunhado do competidor.

Evento para contato é muitos-para-muitos; Relação para contato é um-para-muitos.

No SQL, apenas criamos uma tabela de links e temos todas as três IDs de propriedades (EventId, ContactId, RelationId); no entanto, no Code First,como você representaria esse relacionamento?

questionAnswers(1)

yourAnswerToTheQuestion