c# – Problemas a generar una relación 1 a 1 EF Core


     public class CONTACTO
    {
        [Key]
        public int Id_Contacto { get; set; }
        public string Nombre { get; set; }
        public string Apellido { get; set; }
        public string Email { get; set; }
        public string TelFijo { get; set; }
        public List<CARGO> Cargos { get; set; }
        public List<CONTACTO_PROFESION> Profesiones { get; set; }


        public int Id_Direccion { get; set; }
        public virtual DIRECCION direccion { get; set; }

    }



public class DIRECCION
    {
        [Key]
        public int Id_Direccion { get; set; }
        public string Calle { get; set; }
        public CIUDAD Ciudad { get; set; }

        public virtual CONTACTO Contacto { get; set; }
      
    }

Mi problema es que en la base de datos me genera en la tabla CONTACTOS un campo Id_Direccion y en la tabla DIRECCIONES un Id_Contacto , es decir que ambas tablas no se representa como una relación 1 a 1 ya que tengo entendido que este tipo de relaciones solo una tabla tendrá como clave foránea, la clave primaria de la otra tabla