Como criar um mapeamento muitos-para-muitos no Entity Framework?

Aqui está o caso, eu tenho duas entidades, como Contrato 、 Mídia。

public class Media : Entity
{
    public string Name {get; set;}
    public bool Enabled
    *//other properties can be ignored..*
}

public class Contract : Entity
{
    public string Code {get; set;}
    *//other properties can be ignored..*
}

Contrato tem muitas mídias, parece que são muitos para muitos.

Mas!! no ef cod primeiro, eu preciso de mais 3 campos na tabela ContractMedia (ef auto generated). como StartDate, EndDate e Price. estes não podem ser adicionados na entidade Media.

Como mapear neste caso?

questionAnswers(2)

yourAnswerToTheQuestion