У меня есть следующий класс (сокращено для bevity);
public class Profile : AuditableEntity
{
...
public int? ApprovedById { get; set; }
public ApplicationUser ApprovedBy { get; set; }
}
Где ApplicationUser
не имеет ссылки на класс Profile
.
Я попробовал следующее в моемконфигурация;
entity.HasOne(x => x.ApprovedBy)
.WithMany()
.HasForeignKey(x => x.ApprovedById)
.OnDelete(DeleteBehavior.SetNull);
Поскольку профиль будет утвержден одним ApplicationUser
, но назначенный ApplicationUser
сможет утверждать несколько профилей.(Мне не нужно прослеживать это с точки зрения ApplicationUser
, поэтому нет ссылки на класс ApplicationUser
).
Однако, когда я пытаюсь добавить свою миграцию, я получаю следующую ошибку:
Необработанное исключение: System.InvalidOperationException: Невозможно определить отношение, представленное свойством навигации 'Profile.ApprovedByтипа «ApplicationUser».Либо настройте отношение вручную, либо игнорируйте это свойство с помощью атрибута «[NotMapped]» или с помощью «EntityTypeBuilder.Ignore» в «OnModelCreating».
Может кто-нибудь объяснить, почему это происходит и как яразрешит это пожалуйста?