Я пытаюсь создать правильную таблицу join
, которая работает только с одной моделью, я планирую настроить страницы CRUD для этой таблицы, которые планирую использовать позже, поэтому я считаю, что она не может быть частью исходной модели. ,
public class Person
{
[Key]
public int PersonID { get; set;}
public string Firstname { get; set;}
public string LastName { get; set;}
public string Birthday { get; set;}
}
Теперь я хотел бы отследить, как люди, их лучшие друзья и каковы дни рождения их лучших друзей.
public class Friends
{
[Key]
public int FriendshipID {get; set;}
[ForeignKey("Person")]
public Person SelectedPerson {get; set;}
public int SelectedPersonID {get; set;}
[ForeignKey("Person")]
public Person Friend {get; set;}
public int FriendID {get; set;}
}
У меня есть некоторые проблемы, один из которых я надеваю Я не полностью знаю, как работает [ForeignKey("xxxx")]
, но это может привести к ошибке. У человека может быть несколько лучших друзей, поэтому мне нужно иметь много записей в таблице друзей, где SelectedPerson
будет одинаковым, чтобы получить всех своих лучших друзей, я чувствую, что если бы был хороший способ чтобы получить список своих друзей вместо единственного друга за раз, что имело бы преимущество, но, похоже, вызывало какую-то ошибку каскадного удаления?
Я знаю, что есть вопросы, похожие на этот вопрос в stackoverflow , но я не смог найти ни одного места, где он соединялся бы с одной и той же таблицей, в настоящее время я закомментировал ForeignKeys, потому что EF не может обрабатывать иностранные ключи с тем же именем.
Любая помощь / предложения очень ценится, спасибо за ваше время.