@egorggegor

Как организовать связь один к одному?

Привет, у кого-нибудь есть пример того, как должна быть правильно задана связь один к одному в entity framework через data annotations. Все что пробовал очень сомнительно, почти во всех примерах у зависимого объекта нет своего идентификатора, получается, что зависимый объект привязан только к одному определенному объекту.
Как можно правильно написать?
Ниже код, в котором наглядно продемонстрирована суть проблемы.
public class User
{
    public int Id { get; set; }
    public string Login { get; set; }
    public string Password { get; set; }
 
    public UserProfile Profile { get; set; }
}
 
public class UserProfile
{
    [Key]
    [ForeignKey("User")]
    public int Id { get; set; }
 
    public string Name { get; set; }
    public int Age { get; set; }
 
    public User User { get; set; }
}
  • Вопрос задан
  • 108 просмотров
Пригласить эксперта
Ответы на вопрос 1
@yuopi
C# developer
Так должно сработать))
public class User
{
    public int Id { get; set; }
    public string Login { get; set; }
    public string Password { get; set; }
 
    public virtual UserProfile Profile { get; set; }
}
 
public class UserProfile
{
    public int Id { get; set; }
 
    public string Name { get; set; }
    public int Age { get; set; }

    [ForeignKey("UserId")]
    public virtual User User { get; set; }
}
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы