Почему EF сначала генерирует столбец с внешним ключом?

Я использую Code Entity Framework для автоматического создания схемы базы данных, и одна из моих сущностей выглядит следующим образом:

public class AssessmentsCaseStudies {
    #region Persisted fields
    [Required]
    [Key, Column(Order=0)]
    [ForeignKey("Assessment")]
    public int AssessmentId { get; set; }

    [Required]
    [Key, Column(Order=1)]
    [ForeignKey("CaseStudy")]
    public int CaseStudyId { get; set; }

    [Required]
    public int Score { get; set; }

    [ForeignKey("Follows")]
    public int? FollowsCaseStudyId { get; set; }
    #endregion

    #region Navigation properties
    public virtual Assessment Assessment { get; set; }
    public virtual CaseStudy CaseStudy { get; set; }
    public virtual CaseStudy Follows { get; set; }
    #endregion
}

Когда EF автоматически генерирует мою базу данных, он генерирует таблицу со следующими столбцами:

AssessmentId (PK, FK, int, not null)
CaseStudyId (PK, FK, int, not null)
Score (int, not null)
FollowsCaseStudyId (FK, int, null)
CaseStudy_CaseStudyId (FK, int, null)

Это все хорошо, кромеCaseStudy_CaseStudyId колонка. Почему это было сгенерировано? Для чего это? Как я могу остановить это генерируется? Я подозреваю, что EF больше не может автоматически совпадать сCaseStudyICollection сCaseStudyId столбец, поэтому он создает свой собственный столбец, чтобы связать их вместе для этого свойства навигации.