¿Relación de muchos a muchos (combinación de tablas) con la misma entidad con API de código primero o fluida?

Estoy desarrollando con EF 4.3.1 CodeFirst. Tengo una mesa de aeropuerto como se muestra a continuación:

<code> public class Airport
    {
        [Key]
        public int ID { get; set; }
        public string Name{ get; set; }
    }
</code>

Lo que necesito es una tabla de Ruta con 2 FK de la misma tabla de Aeropuerto como:

<code> public class Route
    {
        public int DepartureAirportID { get; set; }
        public int DestinationAirportID { get; set; }
        public virtual Airport DestinationAirport { get; set; }
        public virtual Airport DepartureAirport { get; set; }
    }
</code>

¿Cómo se puede lograr esto?

Respuestas a la pregunta(2)

Su respuesta a la pregunta