Код структуры сущности первая круговая ссылка - PullRequest
0 голосов
/ 18 ноября 2011

Я хочу, чтобы объект ссылался на себя. Как мне написать эту модель? Например,

public class Term
{
    public int TermId { get; set; }
    public string Name { get; set; }

    public virtual Term PreviousTerm { get; set; }
    public virtual int? PreviousTermId { get; set; }
}

Сгенерированная схема:

TermId
Name
PreviousTermId
PreviousTerm_TermId

Так что, очевидно, PreviousTermId здесь не имеет смысла как отношения FK.

Но при использовании autopper мне нужно отобразить на PreviousTermId, я не могу создать новый объект PreviousTerm и присвоить этому Id. Как мне это исправить?

1 Ответ

2 голосов
/ 18 ноября 2011

Попробуйте указать сопоставления в onModel OnModelCreating событие

  protected override void OnModelCreating(DbModelBuilder modelBuilder)
       {             
            modelBuilder.Entity<Term>().HasOptional(t =>t.PreviousTerm).WithMany().
                           HasForeignKey(t=>t.PreviousTermId);  
       }    
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...